从复选框Winforms中检索不确定状态
本文关键字:不确定 状态 检索 复选框 Winforms | 更新日期: 2023-09-27 18:13:29
我正在使用Winforms,我有麻烦从复选框检索不确定的状态。它总是返回"unchecked"…
我用这段代码来设置复选框,以确定何时加载表单:
checkBox.CheckState = CheckState.Indeterminate;
它的工作原理。
当我点击复选框时,"CheckedChanged"事件正在触发,如果状态不确定,我想什么都不做。但是它返回状态为"unchecked",而checkbox显示为"indeterminate".
下面是我如何检索复选框状态:
CheckBox c = sender as CheckBox;
if (c.CheckState == CheckState.Indeterminate)
{
MessageBox.Show("Nope");
}
我没有找到一个解决方案,除了在WPF,但我使用Winforms.
谢谢你花时间帮我。
我添加了一个CheckBox
控件,ThreeState
属性设置为true
。
在Form_Load
中,我以与您相同的方式将CheckState
设置为CheckState.Indeterminate
。
我已经订阅了CheckBox上的CheckStateChanged
事件。
我可以像这样得到CheckState:
private void CheckStateChanged(object sender, EventArgs e)
{
var checkbox = sender as CheckBox;
switch (checkbox.CheckState)
{
case CheckState.Checked:
MessageBox.Show("Checked");
break;
case CheckState.Unchecked:
MessageBox.Show("Unchecked");
break;
case CheckState.Indeterminate:
MessageBox.Show("Indeterminate");
break;
default:
MessageBox.Show("Nothing");
break;
}
}
显然你要用你的代码代替MessageBox