我试图让一个列表框的ItemTemplate内的上下文菜单中调用父视图模型的方法,传递被点击作为参数的项目。 我有这个工作在项目模板其他按钮,但对于上下文菜单这似乎是失败的。
我有以下XAML(可简称为清楚起见):
<ListBox>
<ListBox.GroupStyle>
<GroupStyle>
...
</GroupStyle>
</ListBox.GroupStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ContextMenu>
<ContextMenu Name="cm">
<MenuItem Header="Open"
cal:Message.Attach="Open($dataContext)">
</MenuItem>
</Grid.ContextMenu>
<TextBlock VerticalAlignment="Center" >
.. text..
</TextBlock>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我有一种感觉这是与事实,视觉树是不同的,所以卡利无法可靠地解决方法来做。 我敢肯定,这是一个常见的问题,我已经尝试了几个,我在网上找到的东西,但似乎没有奏效。
有任何想法吗??