我正在尝试计算组框中当前选中的“复选框”的编号。我有10个复选框。
我一直在尝试一些代码,但是如果我选中了这个盒子,我却只能向上计数而不是相反。所以它只是加起来(但不是每次+1)。
那么我需要采取什么方法来计算当前(不递增)复选框的数量?谢谢
{{1}}
答案 0 :(得分:2)
只需在事件checkedBoxes
中移动checkBox1_Click
的分配,因为您再次循环遍历所有子控件并重置计数。
int checkedBoxes;
private void checkBox1_Click(object sender, EventArgs e)
{
checkedBoxes = 0;
CheckBox check = (CheckBox)sender;
bool result = check.Checked;
if (result == true)
{
btnDone.Enabled = true;
}
foreach (Control c in grpToppings.Controls)
{
CheckBox cb = c as CheckBox;
if (cb != null && cb.Checked)
{
checkedBoxes += 1;
int how_many = checkedBoxes;
}
}
}