private void btnAddTopping_Click(object sender, EventArgs e)
{
{
if((chbGarlic.Checked) || (chbGreenPepper.Checked) ||
(chbMashroom.Checked) || (chbOnion.Checked) ||
(chbOnion.Checked)||(chbOlives.Checked) ||
(chbCreamCheese.Checked) || (chbCheddar.Checked) ||
(chbCheddar.Checked)||(chbFettaCheese.Checked) ||
(chbChicken.Checked) || (chbGroundBeef.Checked) )
PriceForHotSubTopping = 8.99;
这是我的代码。现在我要禁用btnAddTopping,直到取消选中复选框。我现在最能做什么?
答案 0 :(得分:0)
为什么不使用LINQ
扩展程序来查找所有复选框,如下所示:
this.Controls.OfType<CheckBox>().Any(chb => chb.Checked);
答案 1 :(得分:0)
您可以为CheckBoxName.CheckedChanged事件创建一个事件处理程序并输入
btnAddTopping.Enabled = CheckBoxName.Checked;
答案 2 :(得分:0)
让我与您分享一个优雅的XAML解决方案,甚至不必使用代码隐藏方案:
<CheckBox x:Name="chkBox" Content="Check me" />
<Button x:Name="btnAddTopping" Content="Click me" IsEnabled="{Binding ElementName=chkBox, Path=IsChecked}" />
使用此方法,IsEnabled
的{{1}}属性绑定到Button
的{{1}}属性,您甚至不必应用代码逻辑。
希望我能帮助你!