我有一个ComboBox
和一个DataSet
。我想把每个DataColumn
加到ComboBox
中作为ComboBox Item
。我试过这个代码:
DataColumn[] column_collection=new DataColumn[dataset.Tables[0].Columns.Count];
dataset.Tables[0].Columns.CopyTo(column_collection, 0);
combo_box.Items.AddRange(column_collection);
然而,问题是,当我打开ComboBox
时,我只是得到一个空列表。该列表的项数与列数相同,但是其中没有Value。
试试这样
var columns = dataset.Tables[0].Columns
.OfType<DataColumn>()
.Select(c => c.ColumnName);
combo_box.Items.AddRange(columns.ToArray());
而不是:
combo_box.Items.AddRange(column_collection);
写这个:
for (int i = 0; i < column_collection.Length;i++)
{
combo_box.Items.Add(column_collection.GetValue(i).ToString());
}