我对绑定和 WPF 相当陌生,但我已经能够用绑定做一些有趣的事情(至少对我来说很有趣)
有谁知道是否可以将事件(例如 SelectionChanged o Click 事件等)绑定到属性(例如:IsChecked、IsEnabled 等)?
我知道我可以将属性与 Path 属性和所有属性绑定。
如果您想将事件绑定到命令,您可以通过附加行为来完成。看看这个博客,了解如何使用 MVVM Light 做到这一点。绑定到IsEnabled
没有多大意义
他们给出的一个例子是:
<Button>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click" >
<i:InvokeCommandAction Command="{Binding FooCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
在视图模型中
public MyViewModel()
{
//set it as a toggle for example
FooCommand = new RelayCommand( () => IsChecked = !IsChecked );
}
public ICommand FooCommand { get; private set; }
public bool IsChecked
{
get { return _isChecked; }
set { _isChecked = value;
RaisePropertyChanged("IsChecked"); }
}