我正在尝试调整Windows Phone 7 TrainingKit(http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&FamilyID=ca23285f-bab8-47fa-b364-11553e076a9a)中包含的UsingBingMaps示例以使用MVVM-Light工具包。我正在尝试使用EventToCommand为Pushpin的MouseLeftButtonUp事件设置命令,但该命令未执行。以下是图钉的代码:
<my:Pushpin Style="{StaticResource PushpinStyle}"
Location="{Binding Location}"
Background="{Binding TypeName, Converter={StaticResource PushpinTypeBrushConverter}}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseLeftButtonUp">
<cmd:EventToCommand Command="{Binding DataContext.PushpinClickCommand, ElementName=HomePage}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<Image Source="{Binding Icon}" />
</my:Pushpin>
我错过了什么吗?有人能够将EventToCommand与Pushpin对象一起使用吗?
答案 0 :(得分:0)
你打算用这个命令做什么?
我可以使用它来获取命令,但我似乎无法从传递的参数中获取对象详细信息。
我在Silverlight中使用过这个,我认为它可以在WP7中直接使用(如果我弄错的话,请纠正我)
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseLeftButtonUp">
<cmd:EventToCommand Command="{Binding Path=pinSelCommand}" PassEventArgsToCommand="True" ></cmd:EventToCommand>
</i:EventTrigger>
</i:Interaction.Triggers>
在我的viewmodel构造函数中我有
PolySelCommand = new RelayCommand<MouseButtonEventArgs>(PolySelCommandExecute);
在viewmodel类中
public RelayCommand<MouseButtonEventArgs> pinSelCommand{ get; set; }
private voidpinSelCommandExecute(MouseButtonEventArgs e)
{
// < Your code >
}
希望这会有所帮助。如果您弄清楚如何传递对象详细信息,请回复,因为我遇到问题on this post