如何在列表框wp7中打开上下文菜单

时间:2013-03-08 06:38:18

标签: windows-phone-7

我有一个列表框,当我长按列表框中的特定项目时,会打开一个上下文菜单。但是在列表框中我没有使用列表框的点击或保持事件,所以我的上下文菜单是如何可见的。

请告诉哪个事件正在触发打开我的上下文菜单; 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" Click="AddToCalendar_Click" />
                            <toolkit:MenuItem Header="View Description" Click="ViewDescription_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>

请告诉我的上下文菜单是如何打开的,因为我没有使用列表框的点击或暂停事件,但是当我长按列表框项目时,上下文菜单会打开?

1 个答案:

答案 0 :(得分:2)

默认情况下,上下文菜单会长时间打开,这是设计使然。如果您希望以任何其他方式打开它,您必须编写自己的逻辑。有关如何执行此操作的示例,请参阅以下主题:

但请注意,某些用户可能会对此感到困惑,因为大多数用户都希望点击并按住列表框项时会显示上下文菜单。