遵循Laurent的升级指南http://www.galasoft.ch/mvvm/installing/mangobeta/,从现有的MVVMLight WP7项目到WP71项目。我已经核心地更改了引用和名称空间。但是在XAML中无法识别EventTrigger
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
<i:Interaction.Triggers>
<i:EventTrigger EventName="Loaded">
<cmd:EventToCommand
Command="{Binding Mode=OneWay, Path=LoadedCommand}"
PassEventArgsToCommand="True" />
</i:EventTrigger>
</i:Interaction.Triggers>
我在EventTrigger元素上出错。
它改变了吗?
答案 0 :(得分:2)
当我将应用程序从WP7升级到WP7.1(Mango)时,我遇到了同样的问题。问题是MVVM Light Binaries。您需要升级到WP7.1二进制文件。
Laurent Bugnion(https://stackoverflow.com/users/12233/lbugnion)解释了如何在他的网站上升级MVVM Light二进制文件:http://www.galasoft.ch/mvvm/installing/mangobeta/
这些是我用来解决问题的基本步骤:
打开并编译WP71项目。
将二进制文件复制到MVVM二进制位置(在我的情况下为C:\ Program Files \ Laurent Bugnion(GalaSoft)\ Mvvm Light Toolkit \ Binaries)
打开您的项目
在References文件夹中,删除GalaSoft.MvvmLight,GalaSoft.MvvmLight.Extras和System.Windows.Interactivity。
从文件夹C:\ Program Files \ Laurent Bugnion(GalaSoft)\ Mvvm Light Toolkit \ Binaries \ WP71中添加新引用。
答案 1 :(得分:1)
this.Loaded+=(s,e)=>ViewModel.LoadedCommand.Execute(null);
就我而言,我改变了:
<tk:MenuItem Header="Delete Snapshot" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<mvvmLight:EventToCommand Command="{Binding DeleteSnapshotCommand, Mode=OneWay}" CommandParameter="{Binding SelectedItem,ElementName=lstSnapshots}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</tk:MenuItem>
到
<tk:MenuItem Header="Delete Snapshot" Command="{Binding DeleteSnapshotCommand, Mode=OneWay}" CommandParameter="{Binding SelectedItem,ElementName=lstSnapshots}" />
答案 2 :(得分:0)
我已经从这个问题开始,回到芒果前环境。 不是我想要的解决方案,而是 - 前进和前进。