积极答复者
silverlight内容高度大于浏览器高度,内容被隐藏如何解决?

问题
答案
-
Code Snippet<div id="silverlightControlHost" style="width:1200px;height:1024px;min-height:1024px">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="1200" height="1024">
<param name="source" value="ClientBin/MSDNSL.xap"/>
<param name="onerror" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="2.0.31005.0" />
<param name="autoUpgrade" value="true" />
</object>
</div>以object形式页面插入Silverlight控件更好控制,一个是外层DIV的大小,你指定了,如果浏览器展示部分超过这个宽度或高度就会出现滚动条,还有一个是里面object的大小.设置成为100%sl原有大小如果超出了就会自动隐藏掉
你是要里面的div大小是固定的,就是长出去想ie出现滚动条?还是要外面的div多大,里面的object就多大?
第一种方法就跟div嵌入其他页面元素一样指定宽高就可以了
第二种在程序里面
Code SnippetScaleTransform myScale = new ScaleTransform();
double sx, sy;
sx = Application.Current.Host.Content.ActualWidth / 1024;
sy = Application.Current.Host.Content.ActualHeight / 768;
myScale.ScaleX = sx;
myScale.ScaleY = sy;LayoutRoot.RenderTransform = myScale;
object设置成为100% 100%内部用Canvas做布局
还有一种如果你用Grid做根布局,就不用加上面的代码,设计好Magrin就可以了
2008年12月25日 9:38
全部回复
-
在你页面嵌入Silverlight的时候,VS08的嵌入方式是100%,你指定上层DIV的大小就可以了,浏览器就出现滚动条了
Code Snippet<div id="silverlightControlHost" style="width:1000px;height:2000px">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="ClientBin/MSDNSL.xap"/>
<param name="onerror" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="2.0.31005.0" />
<param name="autoUpgrade" value="true" />
</object>
<iframe style='visibility:hidden;height:0;width:0;border:0px'></iframe>
</div>2008年12月24日 5:19 -
Code Snippet<div id="silverlightControlHost" style="width:1200px;height:1024px;min-height:1024px">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="1200" height="1024">
<param name="source" value="ClientBin/MSDNSL.xap"/>
<param name="onerror" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="2.0.31005.0" />
<param name="autoUpgrade" value="true" />
</object>
</div>以object形式页面插入Silverlight控件更好控制,一个是外层DIV的大小,你指定了,如果浏览器展示部分超过这个宽度或高度就会出现滚动条,还有一个是里面object的大小.设置成为100%sl原有大小如果超出了就会自动隐藏掉
你是要里面的div大小是固定的,就是长出去想ie出现滚动条?还是要外面的div多大,里面的object就多大?
第一种方法就跟div嵌入其他页面元素一样指定宽高就可以了
第二种在程序里面
Code SnippetScaleTransform myScale = new ScaleTransform();
double sx, sy;
sx = Application.Current.Host.Content.ActualWidth / 1024;
sy = Application.Current.Host.Content.ActualHeight / 768;
myScale.ScaleX = sx;
myScale.ScaleY = sy;LayoutRoot.RenderTransform = myScale;
object设置成为100% 100%内部用Canvas做布局
还有一种如果你用Grid做根布局,就不用加上面的代码,设计好Magrin就可以了
2008年12月25日 9:38