【问题标题】:How to Add Columns from DataTable to ComboBox in C#如何在 C# 中将 DataTable 中的列添加到 ComboBox
【发布时间】:2014-07-19 14:32:28
【问题描述】:

我有一个ComboBox 和一个DataSet。我想将每个DataColumn 添加到ComboBoxComboBox 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 时,我只得到一个空列表。该列表的项目数与列数相同,但其中没有值。

【问题讨论】:

    标签: c# combobox dataset datacolumn


    【解决方案1】:

    试试这样的

    var columns = dataset.Tables[0].Columns
                  .OfType<DataColumn>()
                  .Select(c => c.ColumnName);
    
    combo_box.Items.AddRange(columns.ToArray());
    

    【讨论】:

    • 你的答案是错误的。 System.Data.DataTable 不包含OfType 的定义,并且没有扩展方法OfType 接受System.Data.DataTable 类型的第一个参数。
    【解决方案2】:

    代替:

    combo_box.Items.AddRange(column_collection);
    

    这样写:

        for (int i = 0; i < column_collection.Length;i++)
        {
            combo_box.Items.Add(column_collection.GetValue(i).ToString());
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-03
      • 2014-04-19
      • 2012-10-25
      相关资源
      最近更新 更多