我试图通过右键单击并在wpf mmv light app上选择上下文菜单来触发命令。列表框由数据表组成。
<ListBox.ContextMenu>
<ContextMenu Width="150" >
<MenuItem Header="Move to holiday">
<MenuItem.Icon>
<TextBlock FontFamily="/BoonManager;component/Fonts/seguisym.ttf#Segoe UI Symbol" Text="🌄" />
</MenuItem.Icon>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cmd:EventToCommand Command="{Binding DataContext.ComMoveToHoliday ,ElementName=LayoutRoot}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</MenuItem>
</ContextMenu>
</ListBox.ContextMenu>
我也尝试过使用这个
DataContext="{Binding Path=PlacementTarget, RelativeSource={RelativeSource Self}}"
但没有运气。谢谢Scott
**更新 我的代码运行在ContextMenu上面运行正常。
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<cmd:EventToCommand Command="{Binding DataContext.ComShowPerson, ElementName=LayoutRoot}" CommandParameter="Expected" />
</i:EventTrigger>
</i:Interaction.Triggers>
所以必须是contextMenu阻止这个。
答案 0 :(得分:1)
我设法通过此链接找到答案。 http://www.codeproject.com/Articles/80632/WPF-Context-Menu-on-List-Item 工作得很好。谢谢你的帮助。赞赏。斯科特
答案 1 :(得分:0)
尝试做类似的事情
<ListView.ContextMenu>
<ContextMenu>
<MenuItem Header="Copy" Command="{Binding FullPathCommand}"/>
</ContextMenu>
</ListView.ContextMenu>