i have a listbox that shows schedule name,date,time and when i long press the particular item of listbox then it opens a context menu in which i have two items that is add to calendar and view description,so i want that wen i click view description then it will open a popup and display the description of the selected item in a list box.
所以请告诉我如何获取上下文菜单的选定索引??? 我在xaml中的代码是:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<ListBox x:Name="scheduleListbox" ItemsSource="{Binding scheduleList}" Tap="scheduleListbox_Tap" >
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical" Height="150" Width="460">
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu>
<toolkit:MenuItem Header="Add To Calendar"/>
<toolkit:MenuItem Header="View Description" Click="MenuItem_Click"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<TextBlock x:Name="textBlock1" Text="{Binding ScheduleName}" Foreground="WhiteSmoke" FontSize="32"/>
<TextBlock x:Name="textBlock2" Text="{Binding ScheduleDate}" Foreground="Red" Margin="0,10,0,0"/>
<StackPanel Orientation="Horizontal" Height="70" Width="460">
<TextBlock x:Name="textBlock3" Text="{Binding StartTime}" Margin="0,5,0,0"/>
<TextBlock x:Name="textBlock4" Text="{Binding EndTime}" Margin="50,5,0,0"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</Grid>
所以请告诉我如何在上下文菜单中获取所选索引,如果我单击某个特定项目的视图描述,则会打开一个弹出窗口,并显示该特定项目的计划名称和描述
答案 0 :(得分:0)
在上下文菜单项的单击处理程序中,您可以使用它来获取单击的项目: (用您的列表项类名替换ScheduleItem)
ListBoxItem contextMenuListItem = (ListBoxItem)(scheduleListbox.ItemContainerGenerator.ContainerFromItem(((MenuItem)sender).DataContext));
ScheduleItem item = (ScheduleItem)contextMenuListItem.Content;