正在设置DataGridViewComboBoxCell项
本文关键字:DataGridViewComboBoxCell 设置 | 更新日期: 2023-09-27 18:24:39
我想在我的DataGridView中单独设置每个DataGridViewComboBoxCell的项(因为每个组合框必须有不同的项)。我用这个代码来设置项目:
foreach (DataGridViewRow row in grid.Rows)
{
((DataGridViewComboBoxCell)row.Cells[1]).Items.Clear();
foreach (Product prod in _ProductList)
{
((DataGridViewComboBoxCell)row.Cells[1]).Items.Add(prod.Name);
}
}
调试我看到DataGridViewComboBoxCell的项目设置正确,但当我查看网格时,组合框是空的。
在进行不同的测试时,我意识到如果我在表单加载后设置项目(例如在单击事件中),项目会正常显示。
我应该如何在表单加载时加载项目?
您在哪个函数中运行foreach循环?如果在构造函数中,那可能还为时过早。请尝试将其移动到Form_Load或稍后运行的其他处理程序。
我在这里的一列中回答了一个关于设置组合框当前值的问题,您可能也有类似的问题。我知道,如果你在控件的生命周期中做得足够晚,设置细胞的DataSource
是有效的,因为我在这里做了。