将项添加到DataGridView ComboBox

时间:2017-05-31 15:37:08

标签: c# winforms datagridview datagridviewcombobox

我有一个WinForm应用程序。在窗体的Load()上,我运行下面的代码,试图在窗体上的DataGridView中加载ComboBox的下拉内容。加载并显示表单时,不显示任何内容。我错过了什么?

    C2   4

1 个答案:

答案 0 :(得分:0)

也许尝试首先将数据从数据库分配到数组,然后在控制台中打印出数组,以查看数据是否正确地从数据库中正确收集。

其次,如果上面的方法有效,那么您可以使用该数组加载到下拉组合框中,如下所示:

为get和set方法创建一个不同的类:

public class getData{
    public string Col1 { get; set; }
    public int Col2 { get; set; }
}

然后使用循环通过列表填充数组:

getData[] allData = null;
string sql = @"SELECT col1, col2 FROM Carrier";
using (var command = new SqlCommand(sql, con))
{
con.Open();
using (var reader = command.ExecuteReader()){
    var list = new List<getData>();
    while (reader.Read())
        list.Add(new getData{ Col1 = reader.GetString(0), Col2 = 
        reader.GetString(1) });
    allData = list.ToArray();
}

然后通过以下方式填充comboBox:

using (DataTable cTable = _SQLConnection.GetData("SELECT Name FROM Carrier")){
    foreach (2ndClassname class1 in 2ndClassName.allData){
    ComboBox.Items.Add(class1.COLUMNNAME);//I am unaware of how many columns your database has :/
    }
}

值得一试吗?