簡體   English   中英

If 語句根據按鈕單擊啟用某些值 C# 和 XAML

[英]If statement to enable certain values based on button clicks C# and XAML

我正在嘗試在我的 xaml.cs 代碼中創建一個 if 語句,該語句將允許我根據按下的按鈕啟用復選框中的某些值
例如:按鈕 1 啟用值 1、2、3 和 4,按鈕 2 啟用值 5、6、7 和 8

這是我到目前為止

private void EnableAll(object sender, RoutedEventArgs e)
        {
            if(1 == true)
            {
                chk_1.IsChecked = true;
                chk_2.IsChecked = true;
                chk_3.IsChecked = true;
                chk_4.IsChecked = true;
            }

            if(1 == false)
            {
                chk_1.IsChecked = false;
                chk_2.IsChecked = false;
                chk_3.IsChecked = false;
                chk_4.IsChecked = false;
            }

            if(2 == true)
            {
                chk_5.IsChecked = true;
                chk_6.IsChecked = true;
                chk_7.IsChecked = true;
                chk_8.IsChecked = true;
            }

            if(2 == false)
            {
                chk_5.IsChecked = false;
                chk_6.IsChecked = false;
                chk_7.IsChecked = false;
                chk_8.IsChecked = false;
            }
        }

這與下面的 XAML 事件相關聯

        <Button Name="btnEnable_1" Content="Enable" Click="#make 1 true#"/>
        <Button Name="btnDisable_1" Content="Disable" Click="#make 1 false#"/>

Click="" 中的位需要分別給出 1 的值作為 true 和 false

我知道我想要什么,但我不知道如何鏈接它們,而且我確信有一種更簡單的方法來做到這一點......如果有人可以提供幫助,那就太棒了!

為每個按鈕添加一個事件處理程序

    <Button Name="btnEnable_1" Content="Enable" Click="myButton_Click" />
    <Button Name="btnDisable_1" Content="Disable" Click="myButton_Click" />

在后面的代碼中:

    private void myButton_Click(object sender, RoutedEventArgs e)
    {
        var button = (Button)sender;
        var enabled = button.Name == "btnEnable_1";

        chk_1.IsChecked = enabled;
        chk_2.IsChecked = enabled;
        chk_3.IsChecked = enabled;
        chk_4.IsChecked = enabled;
        chk_5.IsChecked = !enabled;
        chk_6.IsChecked = !enabled;
        chk_7.IsChecked = !enabled;
        chk_8.IsChecked = !enabled;
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM