我在DataGridView Windows窗体中有一个复选框,并有一个事件处理程序单元格单击
在单元格单击时,我选中DataGridView列中的复选框,如果该单元格也被选中(即复选框未选中且仅选中DataGrid视图单元格),并且该复选框未被选中,则该复选框显示为true。我尝试了getType列,并找到了它显示的类型DataGridViewCheckBox但选中的值错误。????
最佳答案
如果我理解正确,您是说复选框值与基础数据不一致?
这很可能是因为数据已经更新并且是“脏的”,例如,它还没有提交到数据源。如果添加这样的事件处理程序:
private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
if (dataGridView1.CurrentCell is System.Windows.Forms.DataGridViewCheckBoxCell)
{
dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
}
}
然后,这将更新数据源,在查询单元格时,您将拥有正确的复选框状态。
关于c# - DatagridView复选框已选中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/673361/