让Silverlight的大小随浏览器大小变化

来源:互联网 发布:js数组增加元素属性 编辑:程序博客网 时间:2024/05/22 14:09
当浏览器里只有一个Silverlight,没有其他内容时,我们会希望它能够自适应浏览器大小(屏幕大小),flash在解决这个问题时很为难,而用Silverlight则可以轻松解决自适应大小的问题。

首先,在你的HTML页面中,修改这一行CSS代码:
引用内容:
.silverlightHost { width: 640px; height: 480px; }

改为:
引用内容:
.silverlightHost { width: 100%; height: 100%; }


那么,你现在的Silverlight就是自适应大小的了,但是还有很多问题要解决的,比如你的背景图片大小也得跟着改变了,还有元件布局也得跟着变……因为现在Silverlight还不能像WPF那样自动布局,只能指定绝对位置。不过还好,当Silverlight大小发生变化的时候存在BrowserHost.Resize这样一个事件,我们为这个事件写一个EventHandler就好了,而当前Silverlight的尺寸大小则可以通过BrowserHost.ActualWidth和BrowserHost.ActualHeight来获取,那么手动布局也就还算方便了,不过要是能使用相对位置自动布局就更方便了,不知道Silverlight 1.1以后是不是会增加这个功能。

原文地址:http://ooboy.net/blog/blogview.asp?logID=458

原创粉丝点击