【发布时间】:2009-07-07 00:51:54
【问题描述】:
我正在像这样设置DataGridViewComboBoxColumn:
var newColumn = new DataGridViewComboBoxColumn() {
Name = "abc"
};
newColumn.DataSource = new string[] { "a", "b", "c" };
dgv.Columns.Add(newColumn);
这可行:每一行在该列中都有一个下拉框,填充有 a、b、c。
但是,现在我想修剪某些行的列表。我正在尝试像这样设置每行的列表:
foreach (DataGridViewRow row in dgv.Rows) {
var cell = (DataGridViewComboBoxCell)(row.Cells["abc"]);
cell.DataSource = new string[] { "a", "c" };
}
但是,这段代码没有任何效果 - 每行仍然显示“a”、“b”、“c”。
我尝试将new string[] 替换为new List<string> 和new BindingList<string>,均无济于事。
我也尝试删除设置newColumn.DataSource 的代码,但列表为空。
我应该如何正确地做到这一点?
【问题讨论】:
标签: c# .net datagridview