Как использовать поле со списком в C # - PullRequest
2 голосов
/ 20 августа 2009

Понятия не имею, с чего начать. я пробовал DataTable, но он не работал. (Это простой вопрос :))

Я попробовал все

{
    var test = new DataTable();
    test.Columns.Add("test");
    test.TableName = "test";
    test.Columns.Add("test");

    comboBox1.DataSource = test.XXXX ;

}

Ответы [ 4 ]

6 голосов
/ 20 августа 2009

Предполагая, что вы имеете в виду winforms, что-то вроде:

    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);

(в частности, SelectedValue должно дать вам 123 и 456 - полезно для идентификаторов и т. Д.)

2 голосов
/ 20 августа 2009
  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";
2 голосов
/ 20 августа 2009

Свойство ComboBox.Items , если вам не нужны данные из базы данных или что-то в этом роде.

1 голос
/ 20 августа 2009

Вам необходимо установить для 'DataItemField' и 'DataValueField' соответствующие имена столбцов в вашей таблице данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...