java 创建组合框_如何在数据表中创建组合框列

几天来我一直在努力解决这个问题,而且我得到的DataTables和dataGridViews都混淆了 .

我有一个WinForms程序,它有一个DataGridView,dataGridView1和一个DataTable错误 .

public static DataTable errors = new DataTable();

dataGridView1.DataSource = errors;

现在,再往下,在一个名为ValidateText的方法中,我将文本文件中的数据逐行读取到数组中,其中我还定义了数据的错误列:

errors.Columns.Add("Account Number");

errors.Columns.Add("Customer Name");

errors.Columns.Add("Country");

errors.Columns.Add("State");

errors.Columns.Add("Ship-to Country");

errors.Columns.Add("Ship-to State");

var lines = File.ReadAllLines(file);

foreach (string line in lines)

{.

.

.

string []items=line.Split('\t').ToArray();

errors.Rows.Add(items[0], items[1],...items[5]);

当我运行它时,它运行正常 . 问题是,我想让“Country”列中有一个组合框,所以当程序运行,数据显示在dataGridView1中时,用户将有机会选择一个新国家,如果他们想要,来自“国家”栏目 . 在程序中,我确实定义了一个创建DataGridViewComboBoxColumn的方法

private DataGridViewComboBoxColumn CreateComboBoxColumn()

{

DataGridViewComboBoxColumn buildCountries = new DataGridViewComboBoxColumn();

buildCountries.HeaderText = "List of Countries";

DataTable dataTable = new DataTable();

dataTable.Columns.Add("Keys");

dataTable.Columns.Add("Values");

KeyValuePair[] array = CountryList.ToArray();

foreach (KeyValuePair kvp in array)

{

dataTable.Rows.Add(kvp.Key, kvp.Value);

}

buildCountries.DataSource = dataTable;

buildCountries.DisplayMember = "Values";

buildCountries.ValueMember = "Keys";

return buildCountries;

}

我遇到问题的是,如何将我在最后一个方法中创建的组合框放到我上面创建的“Countries”列中?我觉得我没有得到DataGridView和DataTable的东西 . 您将DataTable绑定到DataGridView,但添加此DataGridViewComboBoxColumn似乎很难 .

谢谢,

阿曼达

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值