Gå til innhold

C#: Bruke datasource til listbox/combobox


Anbefalte innlegg

Skrevet

Hei

 

Jeg klarer å fylle ut combo og listbox'r med verdier fra et dataset.

Men jeg ønsker å legge inn en verdi i både combo og listbox'

n i tillegg til de som datasettet gir.

 

Mitt dataset returerer forhandlere (combobox) med forskjellige avtaler (listbox). Men så ønsker jeg å legge inn en "Alle" verdi på toppen.

 

I dag fylles combo/listbox'r seg ut og så blir første forhandler og første avtale merket. Det ønsker jeg ikke.

 

Noen tips til meg

 

Takk Takk

Videoannonse
Annonse
Skrevet

Jeg antar at du bruker databinding. Da kan du f.eks. gjøre slik:

 

listbox.DataSource = ...
listbox.DataBind();
listbox.Items.Insert(0, "-Alle-");
listbox.SelectedIndex = 0;

 

Behandlingen av valget -Alle- må du jo gjøre manuelt i dette tilfellet.

 

Var det noe slikt du tenkte på?

 

Øyvind

Skrevet
Jeg antar at du bruker databinding. Da kan du f.eks. gjøre slik:

 

listbox.DataSource = ...
listbox.DataBind();
listbox.Items.Insert(0, "-Alle-");
listbox.SelectedIndex = 0;

 

Behandlingen av valget -Alle- må du jo gjøre manuelt i dette tilfellet.

 

Var det noe slikt du tenkte på?

 

Øyvind

5954223[/snapback]

 

Takk for svar.

 

Jeg bruker et dataset (contract) til å fylle listbox'n.

     private void cbDealersSearch_SelectedIndexChanged(object sender, EventArgs e)
       {
           DataSet contracts;
           String[][] parms = new String[][] { 
               new String[] {"fetchTable", "Contract"},
               new String[] {"fetchQueryTableList",""},
               new String[] {"fetchWhere","for each contract where ct-custnod1 = "+cbDealersSearch.SelectedValue}};
           if (this.fetch("selma", "fetchTable", out contracts, parms))
           {
               lbContractSearch.DisplayMember = "ct-desc";
               lbContractSearch.ValueMember = "ct-contr1";
               lbContractSearch.DataSource = contracts.Tables[0].DefaultView;
           }
       }

 

Jeg har funnet en måte å legge til en "-Alle-" verdi inn i datasettet, men da blir sorteringen helt gal (den manuelle "-Alle-" verdien kommer sist). Hvordan kan jeg evt. få sortert dette på "ValueMember" ?

 

Mvh

bigw

Skrevet

Skulle gjerne hatt svaret. Har klart å koble opp mot ADO.net, men vet ikke hvordan jeg skal binde en listbox med outputen fra en query, med ren kode.

Skrevet

Hei

 

Jeg får mine data via backend så jeg modifiserer datasettet. Deretter tar jeg den ene tabllen i datasettet inn i en dataviewmanager og sorterer der. Da funker det.

Koden finner du her:

 

      public SearchForm(SunFlowerBackend.SunFlowerBackend backend,DataSet helpTables)
       {           
           InitializeComponent();
           this.backend = backend;
                       
           DataRow myDataRow;

           //Add "record" to dataset to display "None" as initiel value.
           myDataRow = helpTables.Tables["eCustomer"].NewRow();
           myDataRow["c-name"] = "<None>";
           myDataRow["c-custno1"] = 00001;
           helpTables.Tables["eCustomer"].Rows.Add(myDataRow);

           //DataViewManager dvmHelpTables = helpTables.DefaultViewManager;
           
           //put value in a dataviewmanager to be able to sort.
           DataViewManager dvmHelpTable = new DataViewManager(helpTables);
           foreach (DataViewSetting dvsHelpTable in dvmHelpTable.DataViewSettings)
           //This is now sorted
           dvsHelpTable.Sort = "c-custno1";

           cbDealersSearch.DataSource = dvmHelpTable;
           cbDealersSearch.DisplayMember = "eCustomer.c-name";
           cbDealersSearch.ValueMember = "eCustomer.c-custno1";
           

           //cbDealersSearch.DataSource = helpTables.Tables["eCustomer"]; 


       }

 

Får håpe du har noe utbytte av dette.

 

Mvh

Bigwill

 

Skulle gjerne hatt svaret. Har klart å koble opp mot ADO.net, men vet ikke hvordan jeg skal binde en listbox med outputen fra en query, med ren kode.

5991831[/snapback]

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...