2009-08-20 4 views

Répondre

6

En supposant que vous voulez dire WinForms, quelque chose comme:

DataTable test = new DataTable(); 
    test.TableName = "test"; 
    test.Columns.Add("foo", typeof(string)); 
    test.Columns.Add("bar", typeof(int)); 
    test.Rows.Add("abc", 123); 
    test.Rows.Add("def", 456); 

    ComboBox cbo = new ComboBox(); 
    cbo.DataSource = test; 
    cbo.DisplayMember = "foo"; 
    cbo.ValueMember = "bar"; 

    Form form = new Form(); 
    form.Controls.Add(cbo); 
    Application.Run(form); 

(en particulier, SelectedValue devrait vous donner la 123 et 456 - utile pour ids, etc.)

1

Vous devez définir le « DataItemField » et « DataValueField » au lieu noms de colonne dans votre datatable.

2
DataTable dt=new DataTable(); 
    dt.Columns.Add("Col1",typeof(int)); 
    dt.Columns.Add("Col2",typeof(String)); 
    dt.Rows.Add(1,"A"); 
    dt.Rows.Add(2,"B"); 

    comboBox1.DataSource = dt; 
    comboBox1.DisplayMember = "Col2"; 
    comboBox1.ValueMember = "Col1"; 
Questions connexes