我在C#中使用DataGridView。我使用BindingSource从数据库填充表。在填充DataGridView之后,我需要在表格中添加一行复选框,以便在将来启用数据过滤。
我的意思是:例如,点击“加载”按钮后,我得到的DataGridView填充了4列数据,第一行应该包含复选框。
我很困惑。我用DataGridViewCheckBoxCell checkCell = new DataGridViewCheckBoxCell();
SourceDGV.Rows.Add(checkCell);
我的意思是:
但点击加载按钮后会显示You can't add rows to databounded DataGridView
对不起,如果ecxeption翻译错误,我将其翻译成乌克兰语。
任何帮助表示感谢。
答案 0 :(得分:1)
恐怕, DataGridView
中没有整行的概念属于某种类型(在你的情况下为复选框)。这是另一种方式。您可以将整列设置为复选框类型。您可以使用DataGridViewCheckBoxColumn
。
显示整行中的复选框对我来说没有任何意义:假设您有Person
个数据绑定到DataGridView
。因此会有Name
,Age
,Address
等列。现在,你在什么基础上显示行中的复选框?如何将名称转换为bool
(这是复选框需要的值)?
我能想到的一个解决方法是,处理自定义绘画,如果第一行绘制复选框,并手动处理他们的点击事件。但我很确定它并不容易。