The Stars ...My Destination

adamxx

天下事,法无定法,然后知非法法之
世间人,尤了未了,何妨以不了了之
posts - 50, comments - 36, trackbacks - 10, articles - 0

根据浏览器的大小,自动调整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的大小会有不同的解释

Feedback

#1楼    回复  引用  查看    

2008-01-10 11:16 by 笑煞天      
为啥之前用C#开发时,敲BrowserHost总是找不到引用呢...

#2楼 [楼主]   回复  引用  查看    

2008-01-10 11:21 by adamxx      
BrowserHost的引用在System.Windows.Browser,可能是版本问题吧

#3楼    回复  引用    

2008-01-10 23:50 by 3腌菜 [未注册用户]
非常好,谢谢……

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索


相关链接: