网络编程
位置:首页>> 网络编程>> ASP.NET>> 技巧和诀窍:用Silverlight支持全屏模式(2)

技巧和诀窍:用Silverlight支持全屏模式(2)

作者:Scott Guthrie 来源:Scott Guthrie博客中文版 发布时间:2007-09-23 12:37:00 

标签:Silverlight,.net,全屏

简单的全屏模式代码解释

实现上面的例程的代码非常简单。

首先,我们可以打开和编辑应用的.XAML文件,然后往其中添加一个UI元素,我们将用它来触发全屏模式。在上面的例程里,我使用了一个<TextBlock>控件,我将它命名为"MyMessage"。下面是整个应用的XAML的所有内容:

下面的屏幕截图显示了上面.XAML文件的后台代码,包含了整个应用的所有代码:

在应用的Page_Loaded()事件处理器里,我接连了2个事件处理函数。

MyMessage_MouseLeftButtonDown,这个事件处理函数将会在用户点击我加进XAML文件中的TextBlock消息控件时执行。在这个事件处理函数里,我只是简单地根据当前是否已经在全屏模式,来把BrowserHost.IsFullScreen属性切换成true或false。

BrowserHost_FullScreenChange,这个事件处理函数会在Silverlight转换成全屏模式和浏览器模式时执行。它在模式转换发生时,提供了一个很好的地方来添加逻辑以更新UI。在上面的例程里,我改变了TextBlock控件上的文字。我也可以设置控件的大小或者将它们移动到屏幕的新位置上去。目前,Silverlight 1.1 Alpha还没有布局管理器支持,所以控件不会自动定位,除非你编写代码自己管理(不用担心,象桌面WPF版本一样的布局管理控件不久就会推出)。

除了IsFullScreen属性外,BrowserHost类还有许多非常有用的属性和事件:

ActualHeight和ActualWidth属性在你转换成全屏模式查询屏幕尺寸时尤其有用。你可以在页面上定位和扩缩你的UI控件时利用这些属性。

结语

在Silverlight应用中支持全屏模式非常容易,它能提供了了非常棒的,沉浸性用户体验。

想进一步了解Silverlight的话,请阅读我的Silverlight综合公告贴子以及访问www.silverlight.net社区网站。

想观看我使用.NET和Visual Studio Orcas从头打造Silverlight应用的示范的话,请观看这里的这个录像。

希望本文对你有所帮助

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com