功能的实现需要toolkit中的MenuItem对象,具体实现方法有两种:XAML编程实现和.CS中代码实现:
1,XAML实现:
首先,在页面的xaml中加入引用:
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
然后,在控件代码下加入如下代码:
<toolkit:ContextMenuService.ContextMenu> <toolkit:ContextMenu Width="200" BorderBrush="Red" BorderThickness="5"> <toolkit:MenuItem Header="test1" Click="MenuItem_Click"/> <toolkit:MenuItem Header="test2" Click="MenuItem_Click"/> <toolkit:Separator/> <toolkit:MenuItem Header="test3" Click="MenuItem_Click"/> </toolkit:ContextMenu> </toolkit:ContextMenuService.ContextMenu>
这样,在运行时,长按你的控件,就会弹出上下文菜单,现实三个选项"test1""test2""test3"了.
2,在.CS中编程动态实现:
首先,添加一控件对象,这里以textblock为例--TextBlock textBlock;
然后,定义MenuItem对象,并添加到ContextMenu对象中:
MenuItem menuItem = new MenuItem();
menuItem.Header = "Delete";
。。。。。。
ContextMenu con = new ContextMenu();
con.Items.Add(menuItem);
。。。。。。
最后,将构建好的菜单添加给控件对象:
ContextMenuService.SetContextMenu(textBlock,con);
这样,就完成了!