2017-09-02 29 views
0

我相信差不多,这很容易,但我怎么也找不到...... 我有DataGridViewCheckBoxColumn,我需要更新此列中的所有单元格的值象下面这样:选定单元格不会改变的DataGridView价值

private void HCStaffSelect_OnCheckBoxClicked(bool isChecked) 
{ 
    foreach (DataGridViewRow row in dgvStaffs.Rows) 
    { 
     if (!row.IsNewRow) 
     { 
      row.Cells[cStaffSelect.Index].Value = isChecked; 
     } 
    } 
} 

我的问题是,重点(选定)细胞不会改变它的价值。如何改变价值,以便细胞呢?

+1

可能更改或清除选择'dgvStaffs.ClearSelection()' – Slai

+0

@Slai我会尽力。谢谢你!我试图提交编辑,但它没有帮助 –

回答

1

DataGridView.RefreshEdit()可以用来刷新curenly编辑单元格的值:

for (int r = 0; r < dgvStaffs.RowCount - 1; r++) 
    dgvStaffs[cStaffSelect.Index, r].Value = isChecked; 

dgvStaffs.RefreshEdit(); 
+1

是的,它的工作原理,谢谢你!但'dgvStaffs.RefreshEdit();'必须在正确行为的循环之后。 –

相关问题