Windows phone 7 如何基于wp7中的数据透视项删除上下文菜单项?
这是针对Windows Phone 7.5的 我无法基于数据透视项从上下文菜单中删除菜单项。我有三个数据透视项,需要在关联菜单中显示自定义项 我试图找到正确的事件,可以帮助我捕获当前的轴心项目,并在此基础上,我想提出上下文菜单选项 更新#1: Xaml标记:Windows phone 7 如何基于wp7中的数据透视项删除上下文菜单项?,windows-phone-7,Windows Phone 7,这是针对Windows Phone 7.5的 我无法基于数据透视项从上下文菜单中删除菜单项。我有三个数据透视项,需要在关联菜单中显示自定义项 我试图找到正确的事件,可以帮助我捕获当前的轴心项目,并在此基础上,我想提出上下文菜单选项 更新#1: Xaml标记: <controls:PivotItem x:Name="HighPivotItem" Header="high"> <toolkit:ContextMenuService.ContextMenu>
<controls:PivotItem x:Name="HighPivotItem" Header="high">
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu Opened="ContextMenu_Opened"
Closed="ContextMenu_Closed">
<toolkit:MenuItem Header="mark as done" Click="MarkMenuItem_Click"/>
<toolkit:MenuItem Header="edit" Click="EditMenuItem_Click"/>
<toolkit:MenuItem Header="delete" Click="DeleteMenuItem_Click"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<Grid>
<TextBlock x:Name="HighTextBlock" Text=""
Visibility="Collapsed" Margin="22,17,0,0"
Style="{StaticResource PhoneTextGroupHeaderStyle}" />
<ListBox x:Name="HighListBox"
ItemTemplate="{StaticResource DataTemplate}"
SelectionChanged="ListBox_SelectionChanged" />
</Grid>
</controls:PivotItem>
您应该为每个透视项设计上下文菜单
<controls:Pivot Title="Pivot">
<controls:PivotItem Header="one" DataContext="{Binding Task}">
<!-- Stuff for pivot ONE -->
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem Header="Menu for both"/>
<toolkit:MenuItem Header="Menu for item ONE"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</controls:PivotItem>
<controls:PivotItem Header="two">
<!-- Stuff for pivot TWO -->
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem Header="Menu for both"/>
<toolkit:MenuItem Header="Menu for item TWO"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</controls:PivotItem>
</controls:Pivot>
这是可行的,我可以看到上下文菜单,但现在事件没有得到菜单项。它们显示为空,因此操作不起作用。我不确定出了什么问题。添加了代码段..任务返回为空。在示例代码中,我没有看到数据透视项的datacontext设置为任何值。确保数据透视项的DataContext正确绑定到整个页面HMMM的DataContext属性。我有一个网格内的数据绑定。我所做的只是通过contextmenu将数据模板移动到各个数据透视项。没有任何东西应该被破坏。你能更新你的xaml/代码以更好地反映你在做什么吗?
<controls:Pivot Title="Pivot">
<controls:PivotItem Header="one" DataContext="{Binding Task}">
<!-- Stuff for pivot ONE -->
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem Header="Menu for both"/>
<toolkit:MenuItem Header="Menu for item ONE"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</controls:PivotItem>
<controls:PivotItem Header="two">
<!-- Stuff for pivot TWO -->
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem Header="Menu for both"/>
<toolkit:MenuItem Header="Menu for item TWO"/>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</controls:PivotItem>
</controls:Pivot>
public MainPage()
{
this.DataContext = new ViewModel { Task = new Task() };
InitializeComponent();
}