首先,我知道这个话题:How to make context menu work for windows phone?
但是这种方式很复杂......所以我有这个 XAML 代码:
<StackPanel Name="friendsGrid" Margin="0,0,0,0" Background="Transparent">
<ListBox Name="friendsListBox" FontSize="32" Tap="friendsListBox_Tap">
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu Name="MyContextMenu" Opened="MyContextMenu_Opened">
<toolkit:MenuItem Header="action" Click="contextMenuAction_Click"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</ListBox>
</StackPanel>
我正在填写这样的列表:
this.friendsListBox.Items.Add(friend.serviceName);
但是,当然,当我执行 longtap 时,上下文菜单会出现并选择整个列表,而不仅仅是一个项目。
是否有一些简单的方法可以识别该项目被点击?谢谢
顺便说一句,我找到了这个方法,但是 contextMenuListItem 没有收到任何东西,它仍然为空:
ListBoxItem contextMenuListItem = friendsListBox.ItemContainerGenerator.ContainerFromItem((sender as ContextMenu).DataContext) as ListBoxItem;