如何在c#中从数据表添加列到组合框



我有一个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());
    }

相关内容

  • 没有找到相关文章

最新更新