![[WP7]实现Listbox中长按d出ContextMenu效果,第1张 [WP7]实现Listbox中长按d出ContextMenu效果,第1张](/aiimages/%5BWP7%5D%E5%AE%9E%E7%8E%B0Listbox%E4%B8%AD%E9%95%BF%E6%8C%89%E5%BC%B9%E5%87%BAContextMenu%E6%95%88%E6%9E%9C.png)
#目标
在WP7中,为了达到长按d出选项菜单效果,可以采用ContextMenu实现。
#前提条件
带有ContextMenu的toolkit,可以通过访问http://silverlight.codeplex.com/releases/vIEw/71550获取最新的toolkit以及相应的源码及XAP。
如果需要检查,可访问$:\Program files\Reference AssemblIEs\Microsoft\Framework\Silverlight\v4.0\Profile (其中$为SDK安装盘符)。对于WP7.0,访问windowsPhone目录;对于WP7.1,访问windowsPhone71目录。
#实现过程
至此,准备工作已经就绪,可以开始实现效果了。
1.在工程references中引入Microsoft.Phone.Controls.Toolkit。
2.在需要实现的页面(例如,demo.xaml)文件中加入toolkit声明如下:
view plain xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit" 3.在demo.xaml中加入实现代码如下:<!--ContentPanel - place additional content here--> <StackPanel x:name="ContentPanel" GrID.Row="1" margin="12,12,0" > <GrID Background="Blue"> <TextBlock Text="Select a color from the Context Menu"/> <ListBox x:name="ListBox"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel OrIEntation="Horizontal"> <toolkit:ContextMenuService.ContextMenu> <toolkit:ContextMenu> <toolkit:MenuItem header="Add color" Click="MenuItem_Click"/> <toolkit:MenuItem header="Remove color" Click="MenuItem_Click"/> </toolkit:ContextMenu> </toolkit:ContextMenuService.ContextMenu> <Image Source="{Binding ImageUri}" Stretch="None" /> <TextBlock Text="{Binding Text}" /> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </GrID> </StackPanel> 如此即可完成长按d出菜单效果。
#效果演示
#问题
1.在WP7.0上则存在被缩放的部分有显示问题,当背景颜色对比大时更加明显。
2.在mango(WP7.1+)上效果非常好,与系统现象一致。看来微软已经FIX此问题。
#参考链接
1.http://silverlight.codeplex.com/releases/vIEw/71550,以获取最新的toolkit和source code。
2.http://www.windowsphonegeek.com/tips/wp7-contextmenu-answers-to-popular-questions
转自http://www.voidcn.com/article/p-qjcxlaav-uk.html
总结以上是内存溢出为你收集整理的[WP7]实现Listbox中长按d出ContextMenu效果全部内容,希望文章能够帮你解决[WP7]实现Listbox中长按d出ContextMenu效果所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)