DataGridView CheckBox列不会将更改应用于基础绑定对象

时间:2016-10-31 17:50:42

标签: c# winforms checkbox datagridview datagridviewcheckboxcell

我有一个Record对象列表,它们在我的DataGridView中作为行。 每个Record都有一个新的bool值Helped。果然,这个新值在我的表单中显示为复选标记。

目前看来,当选中此框时,它似乎无法更改相应HelpedRecord bool的值。

我需要更改某种只读属性吗?如何将我的表单上的点击作为其DataSource的值的变化?

返回

修改:我找到了System.Windows.Forms.DataGridViewEditMode.EditOnEnter属性,但我还没有看到我的Record.Helped属性更新。

1 个答案:

答案 0 :(得分:3)

  

目前看来,当选中此框时,它似乎没有   在相应的记录中更改Helped bool的值。

您在DataGridView的单元格上所做的更改在完成单元格编辑之前不会立即提交到数据源,然后更改将被推送到数据源。如果出于任何原因想要更快地推送更改,可以致电:

dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);

例如,您可以在CellContentClick的{​​{1}}事件中执行此操作,将复选框值推送到数据源的基础属性。