我遇到以下问题:
我有一个托管silverlight内容的网页。 silverlight内容是导航识别的,因此它将始终是相同的html页面和相同的silverlight控件。然而,当用户从控件内的一个页面导航到另一个页面时,内容当然会改变。 不同的页面具有不同的大小要求,在某些情况下,内容的最终高度未知,因为内容来自Web服务。
我希望silverlight内容的高度根据实际需要动态生成。我看到许多解决方案使Silverlight控件适合浏览器窗口,但我希望silverlight内容只有它需要的实际高度并在必要时溢出,以便我可以使用浏览器滚动条。
该页面还应该有一个静态背景图像,当对象标记与silverlight内容的大小不完全时,这会给我一些问题。
我想要实现的效果或多或少像在这个网页中: http://www.codegarden.de/
背景应该尽可能在html页面中,silverlight控件应该是中间部分的内容,并且应该使用浏览器滚动条滚动。
任何人都可以帮助我吗?谢谢!
答案 0 :(得分:1)
您可以让您的silverlight应用程序在托管页面上执行javascript命令,然后依次设置<Object>
标记的大小。
类似的东西:
using System.Windows.Browser;
// set a global variable
HtmlPage.Window.Eval(String.Format("setSilverlightObjSize({0},{1});",newW,newH));
其中setSilverlightObjSize
是您在托管页面中编写的javascript函数。
function SetObjectTagProps(w,h)
{
var obj = document.getElementById("silverlightObj");
obj.width = w;
obj.height = h;
}