Posted on 2008-01-10 10:49
adamxx 阅读(2138)
评论(3) 编辑 收藏 所属分类:
Silverlight
根据浏览器的大小,自动调整Silverlight的大小
在Page_Load方法中添加
BrowserHost.Resize += new EventHandler(BrowserHost_Resize);
Resize事件处理:

void BrowserHost_Resize(object sender, EventArgs e)
{
double xscale = BrowserHost.ActualWidth / this.Width;
double yscale = BrowserHost.ActualHeight / this.Height;
ScaleTransform scale = new ScaleTransform();
scale.ScaleX = xscale ;
scale.ScaleY = yscale ;
RenderTransform = scale;
}
将silverlightHost的height与width成100%, 好让 Silverlight control 随着 html 自动缩放
修改
createSilverlight中的properties: width:"100%",height:"100%"
该代码在IE7下测试成功,可以点击
这里下载演示
对于Firefox:
删除 , 之前的 <!DOCTYPE ...>。 如果不删 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">, 虽然在IE上不会有问题,但在Firefox上则无法正常运行,因为Firefox遇到<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">时,HTML的大小会有不同的解释