我正在阅读Shawn Wildermuth关于使用MVVM光构建Silverlight应用程序的文章: - http://wildermuth.com/2010/01/02/Architecting_SL4_Apps_with_RIA_Services_MEF_and_MVVM_-_Part_4_%28of_3%29
我只是想知道有什么区别: -
<Button
Content="Previous Page" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction CommandName="PreviousPage"/>
<ei:CallMethodAction TargetObject="{Binding ElementName=grid}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
Run Code Online (Sandbox Code Playgroud)
和
<Button Command="{Binding PreviousPage}"
Grid.Row="0"
Content="Previous Page" />
Run Code Online (Sandbox Code Playgroud)
你什么时候专门使用触发器?
提前致谢 :)
在命令绑定上使用触发器的主要原因是,如果您希望触发器触发除以外的事件Click.如果你需要一个命令来触发鼠标而不是点击按钮,你需要使用触发器来EventName设置鼠标悬停.
在控件本身上实现的命令非常有限.它们很好地涵盖了基本情况,但它们不是很灵活.触发器为您提供了更多的灵活性.
| 归档时间: |
|
| 查看次数: |
2908 次 |
| 最近记录: |