【发布时间】:2012-12-06 13:39:38
【问题描述】:
在 WPF Button 中,我们有一个 Command 参数,可以绑定到 ICommand。
<Button Command="{Binding SomeCommand}"/>
我们还可以使用EventTriggers 和InvokeCommandAction 来触发ICommand。
<Button>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction Command="{Binding SomeCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
它们有什么区别,什么时候用?
更新:
我注意到以下场景的不同:
- 我有一个文本框,如果文本框为空,则使用 IValudationRule 进行验证。
- 我添加了 MultiDataTrigger 条件,以便在 Validation.HasError 等于 true 时将保存按钮的 IsEnabled 属性设置为 false。
使用按钮命令一切正常,但使用 EventTrigger 就不行了。
有什么原因吗?
【问题讨论】:
标签: wpf button eventtrigger icommand