[英]Windows Phone app - get index of item that called context menu
我有一個帶有上下文菜單的ListBox
<ListBox>
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu IsZoomEnabled="True"x:Name="ContextMenu" >
<toolkit:MenuItem x:Name=”Open" Header=”Open Trailer" Click="nOpe_Click"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</ListBox>
如何獲取稱為Open_Click事件的ListBox項的索引。
您的Open_Click事件的簽名中應包含一個Object sender
。 這是您必須使用的。
sender
並將其轉換為MenuItem
。 此MenuItem
將具有一個DataContext
此MenuItem
的DataContext
應該是ListBox
一個項目。
如果您有對該ListBox
的引用,則可以
var contextMenuOpenedIndex = ListBoxName.IndexOf((sender as MenuItem).DataContext)
這是相同的問題(和參考): ContextMenu事件處理程序中的ListBox.SelectedIndex
一個示例ItemTemplate:
<ListBox x:Name="SampleListBox">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding}">
... ContextMenu ...
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.