WPF MVVM模式开发简明实现教程 3 事件绑定
WPF MVVM模式开发实现简明教程 2 初识 INotifyPropertyChanged
WPF MVVM模式开发实现简明教程 3-1 BaseCommand
WPF MVVM模式开发实现简明教程 4 ViewModelBase
WPF MVVM模式开发简明实现教程 5 使用MultiValueConverter进行多参数事件绑定
WPF MVVM模式开发简明实现教程 7 DevExpress MVVM
事件绑定有至少两种方法
这里只会讲这两种,其他方法请自行研究
- CallMethodAction
View:
<Button Content="{Binding ButtonContent}" x:Name="button" >
<b:Interaction.Triggers>
<b:EventTrigger EventName="Click" >
<b:CallMethodAction TargetObject="{Binding}" MethodName="Button_Click" />
</b:EventTrigger>
</b:Interaction.Triggers>
</Button>
ViewModel:
public void Button_Click(object sender, RoutedEventArgs e)
{
}
这种方式简单,还可以带有事件e,对一些mouse等事件很有用
- InvokeCommandAction
View:
<b:Interaction.Triggers>
<b:EventTrigger EventName="Click" >
<b:InvokeCommandAction Command="{Binding Button_Click}"
CommandParameter="{Binding ElementName=button}" />
</b:EventTrigger>
</b:Interaction.Triggers>
ViewModel:
private ICommand button_Click2;
public ICommand Button_Click2
{
get
{
if (button_Click2 == null)
{
button_Click2 = new BaseCommand((param) =>
{
Button button = param as Button;
//....
});
}
return button_Click2;
}
}
注意如果View里没CommandParameter,ViewModel里就没有param
这种适合传递一个参数的

浙公网安备 33010602011771号