【发布时间】:2019-12-25 18:54:09
【问题描述】:
我在我的 UWP 程序中实例化了两个不同的对象。它们的类定义如下所示:
namespace StackOverflow
{
public class FirstClass : INotifiyPropertyChanged
{
private bool isEnabled = false;
public bool IsEnabled
{
get => isEnabled;
set
{
isEnabled = value;
NotifyPropertyChanged();
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged([CallerMemberName] string propertyName = "") => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
public class SecondClass : INotifiyPropertyChanged
{
private bool isEnabled = false;
public bool IsEnabled
{
get => isEnabled;
set
{
isEnabled = value;
NotifyPropertyChanged();
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged([CallerMemberName] string propertyName = "") => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
XAML 端的绑定当前如下所示:
<Button Content="Press me if you can" IsEnabled="{x:Bind FirstClass.IsEnabled, Mode=OneWay}"/>
使用此代码,Button.IsEnabled 仅依赖于 FirstClass.IsEnabled,我想要实现的是 Button.IsEnabled 属性依赖于 FirstClass.IsEnabled 和 SecondClass.IsEnabled。我怎样才能得到这样的结果?
我想实现 MultiBinding,但它似乎是 WPF 独有的功能
【问题讨论】: