我一直在尝试用设计器和代码将DataGridViewCheckBoxColumn添加到现有的DataGridView几个小时。 CheckBoxCell没有在UI上显示方形(或状态)。但是,当我尝试了一些我发现的代码(并忘记更改索引)时,我得到了正常工作并正常显示。
所以我想知道为什么你不能在DataGridView.Columns的最后一个索引处使用DataGridViewCheckBoxColumn?
更明确:
为什么这样做
MyDataGridView.Columns.Insert(0, myCheckBoxColumn);
当这不起作用时
MyDataGridView.Columns.Insert(7, myCheckBoxColumn);
注意:myCheckBoxColumn变量在两行之间没有变化。它完全相同,与实际问题无关。
编辑:
使用像bellow这样的Add方法无法解决问题。
MyDataGridView.Columns.Add(myCheckBoxColumn);
解决:
我的问题与处理DataGridView的CellPainting事件有关。在函数结束时,DataGridViewCellPaintingEventArgs的Handled属性设置为true。这导致DataGridViewCheckBoxColumn无法正常显示。
答案 0 :(得分:1)
如果要在右侧添加列,请改用DataGridViewColumnCollection的Add方法:
Locale[] locs= Locale.getAvailableLocales();