由于希望Silverlight程序在浏览器中可以随着浏览器的大小而自适应,以便给客户带来更好的体验,在网上搜索了一下代码,大概原理是:
设置SilverlightHost的大小为100%(这在Silverlight2 beta2中似乎已经自动设置了,程序的大小为640*480)


















}
通过以前代码可以实现Silverlight程序随着浏览器的大小而变化了,可是在实际应用发现,实际上这样只能实现Silverlight程序随着浏览器变大,而不是能缩小。也就是说当浏览器的容器的大小大于Silverlight原始大小时,Silverlight程序随之变大,但当浏览器容器的大小小于Silverlight程序的原始大小时,会出现Silverlight程序显示不全的情况,如下图所示:
图1
图2
在图1中可看出,当Host的尺寸大于程序大小时,显示正常,而在图2中则消失了一部分。
经过分析,我认为是因为Rezised事件是后于浏览器大小变化而激发的,但此时浏览器已经遮挡了一部分程序画面,而Transform的变换只依靠当前显示的画面进行变换,所以出现了这种现象。
结论:我也不知道这种情况该如何处理,不晓得有没有达人知道,还请告知,谢拉。