Silverlihgt 2.0 参考:如何在silverlihgt中使用右键(How to Right Click on a Silverlight Application.)

一般我们在silverlight中点击右键会出现如下的对话筐.

Context Menu:

Configuration Dialog:

 

在Flash中 其提供了一个可定制话的右键菜单系统.(ContextMenu).

 

这个在silverlight中也是一样可以做到的.

过程如下:
Step 1. 添加一个<TextBlock>到Page.xaml中

 

Code

 

Step 2. 在页面(.aspx 与 htm)中设置silverlight的参数Windowless="true",即我们需要设置Silverlight 控件为无视窗的(windowless).

(1) .aspx页面:

Code

(2)htm页面

 

Code

 

Step 3. 最后修改Page.xaml.cs页面的代码

  • 新建立一个ContextMenuInterceptor类.这个类是用来处理页面中“OnContextMenu”事件的.在用到HTMLPage对象你需要引入System.Window.Browser命名空间.
  • 在调用e.PeventDefault()方法后,将会取消右键点击事件.所以silverlight不会捕捉到它.
  • 在这里我们已经成功的拦截了右键点击事件,做我们想做的任何事情了.

 

Code

 

运行一下,跑起来就可以了,无论你是用aspx作为起始页,还是用htm作为起始页,都可以看到下面效果:

 

右击文字区域:


 

 



posted @ 2008-08-06 09:48  杰克帝.NET  阅读(464)  评论(1编辑  收藏  举报