The*_*End 1 c# validation checkbox
有一个包含 3 个复选框项目和一个按钮的表单。除非表单上至少检查了 1 个以上项目,否则请禁用“完成”按钮。
private void btnFinish_Validating(object sender, CancelEventArgs e)
{
if ((checkBlinna.Checked == false && checkSoup.Checked == false) || (checkBlinna.Checked == false && checkGnocchi.Checked == false) || (checkSoup.Checked == false && checkGnocchi.Checked == false))
{
btnFinish.Enabled = false;
}
}
Run Code Online (Sandbox Code Playgroud)
认为这可行,但该按钮从一开始就启用,并且当选中任何复选框时,该按钮将永远禁用。
你可以做 :
void UpdateFinishEnabled()
{
var boxes = new CheckBox[] { checkBlinna, checkSoup, checkGnocchi };
btnFinish.Enabled = boxes.Any(b => b.Checked);
}
Run Code Online (Sandbox Code Playgroud)
在表单加载和验证处理程序内部调用。