Silverlight全屏与Out-of-Browser支持


最近为了提高Silverlight项目的使用体验,在项目中加了一个全屏支持。Silverlight全屏是非常方便的,给全屏按钮加上处理逻辑,
将IsFullScreen属性设为true即可。示例代码如下:

this.fullScreen = new DelegateCommand(
o
=> { App.Current.Host.Content.IsFullScreen = !App.Current.Host.Content.IsFullScreen; },
o
=> { return true; });



但是全屏之后就发现了问题,键盘无法法输入,导致无法给流程环节重新命名。查看silverlight文档,Silverlight运行在安全沙盒中,
全屏后只能用有限的几个键:UP ,DOWN ,LEFT ,RIGHT ,SPACEBAR,TAB,PAGE UP,PAGE DOWN,HOME,END,ENTER。 这几个
键全是为播放器准备的,在我们的项目中全屏后功能受限,就很不方便了。试了一下用F11全屏,都比Silverlight全屏好用多了,
而且一句代码不用写。

要突破Silverlight的安全限制,Silverlight4.0提供了解决方案:OUt-of-Browser支持。这个功能只需要配置即可,配置的步骤如下 :
  1. "解决方案资源浏览器"中,选择要为其启用浏览器外支持的 Silverlight 项目。

  2. "项目"菜单上,选择项目名称"属性"

  3. "Silverlight"选项卡上,选择"允许在浏览器外运行应用程序"

  4. 单击"浏览器外设置"

    随即出现"Out-of-Browser Settings"对话框。

  5. 为指示的字段指定值,然后单击"确定"window Title和Shortcut name可选填。

我配置完之后,重新运行项目,并安装到计算机。键盘不能输入的问题终于得解。有了Out-of-Browser支持,Silverlight的全屏
就更完善了。Out-of-Browser支持还拓展了silverlight的使用空间,让silverlight脱离了仅仅是web应用的层面,也可以做桌面程序了。
posted @ 2010-08-30 11:06  DevinShaw  阅读(1152)  评论(5编辑  收藏  举报