我无法计算DataGridView中的选中复选框。我想在选中复选框期间对选中的复选框进行计数,并将选中的项目数存储在标签中。我尝试了以下代码,但没有给出正确的计数:
int num = 0;
private void dgvLoadData_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
bool isChecked = Convert.ToBoolean(dgvLoadData.Rows[dgvLoadData.CurrentCell.RowIndex].Cells[0].Value.ToString());
if (isChecked)
{
num+=1;
}
else
{
num-=1;
}
labelSelectedSum.Text = "Selected Items: " + num;
}
CurrentCellDirtyStateChanged
在桌子上套用事件。调用gridview.CommitEdit
以更新复选框列的值。请执行下列操作:
private void dgvLoadData_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
if (dgvLoadData.IsCurrentCellDirty)
{
dgvLoadData.CommitEdit(DataGridViewDataErrorContexts.Commit);
}
}
那将称为_CellValueChanged
事件。CellValueChanged
事件内的代码将不会做任何更改:
int num = 0;
private void dgvLoadData_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0)
return;
bool isChecked = (bool)dgvItemsToShip.Rows[e.RowIndex].Cells[0].Value;
if (isChecked)
{
num+=1;
}
else
{
num-=1;
}
labelSelectedSum.Text = "Selected Items: " + num;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句