如何在WPF C#中的单个if语句中检查2个或更多checkBox IsChecked值?我试图这样做,但它不起作用。
if ((symbols_cb.IsChecked ?? true) && (digits_cb.IsChecked ?? true))
{
MessageBox.Show("Check - Yes it is selected.");
}
此处 symbols_cb 和 digits_cb 是复选框,我希望在选中此复选框时显示一条消息。
答案 0 :(得分:1)
检查这个答案:
if ((symbols_cb.IsChecked ?? false) && (digits_cb.IsChecked ?? false))
{
MessageBox.Show("Check - Yes it is selected.");
}
答案 1 :(得分:1)
运算符??
无法正常工作,如果左值为null且返回rigth值为null,则此运算符为chek。
你需要这样做:
if (symbols_cb.IsChecked && digits_cb.IsChecked)
{
MessageBox.Show("Check - Yes it is selected.");
}
编辑:我不知道在WPF isChecked中返回bool?
。检查IsChecked是否有值后,尝试检查值:
if (symbols_cb.IsChecked.HasValue ?? symbols_cb.IsChecked : false &&
digits_cb.IsChecked.HasValue ?? digits_cb.IsChecked : false )
{
MessageBox.Show("Check - Yes it is selected.");
}
答案 2 :(得分:0)
如果这是你的观点:
Box<Messenger>
您可以使用以下方法处理事件:
<StackPanel>
<CheckBox Name="symbols_cb" Checked="checkBox_CheckedChanged" Unchecked="checkBox_CheckedChanged" />
<CheckBox Name="digits_cb" Checked="checkBox_CheckedChanged" Unchecked="checkBox_CheckedChanged"/>
</StackPanel>