银色+视图模型+C#中的复选框

本文关键字:复选框 +C# 模型 视图 银色 | 更新日期: 2023-09-27 18:00:29

我有两个复选框A和B。我希望在选中A时禁用B。你知道怎么做吗?提前谢谢。

银色+视图模型+C#中的复选框

如果您正在使用MVVM,就像在viewmodel标记中一样,那么只需在view model中创建一个bool属性,并将checkbox A's IsChecked与该属性绑定即可。

XAML

Checkbox IsChecked= {Binding path = IsACheckedProperty ...} //A

.CS

public bool IsACheckedProperty
{
    get
    {
       return associated var;
    }
    set
    { 
       var = val; 
       if(var)
           IsBEnabled = false;
       else
           IsBEnabled = true;
    }
}

现在创建另一个属性IsBEnabled,用于在选中A后禁用B。

public bool IsBEnabled
{
    get
    {
       return associated var;
    }
    set
    { 
       var = val; 
       //notify view via notifyPropertyChanged
    }
}

XAML

Checkbox IsEnabled = {Binding path = IsBEnabled...} //B