Asp.net IE7中没有用于溢出Silverlight控制的滚动条

Asp.net IE7中没有用于溢出Silverlight控制的滚动条,asp.net,silverlight,internet-explorer,internet-explorer-7,Asp.net,Silverlight,Internet Explorer,Internet Explorer 7,autoI一直在开发嵌入ASP.NET web应用程序中的Silverlight 4应用程序。所述Silverlight控件的高度不同,在许多情况下,从屏幕底部垂直流动 这对于大多数浏览器(特别是IE 8、Chrome、Firefox)来说都没有问题,因为它们在HTML文档中添加了一个垂直滚动条。但是,IE7没有显示这些滚动条,因此无法查看整个Silverlight控件 我如何将其嵌入的代码片段: ... <div id="silverlightControlHost"> <o

autoI一直在开发嵌入ASP.NET web应用程序中的Silverlight 4应用程序。所述Silverlight控件的高度不同,在许多情况下,从屏幕底部垂直流动

这对于大多数浏览器(特别是IE 8、Chrome、Firefox)来说都没有问题,因为它们在HTML文档中添加了一个垂直滚动条。但是,IE7没有显示这些滚动条,因此无法查看整个Silverlight控件

我如何将其嵌入的代码片段:

...
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2"
    height="100%"
    width="100%">
    <param name="source" value="MyApp.xap" />
    <param name="onError" value="onSilverlightError" />
    <param name="background" value="white" />
    <param name="minRuntimeVersion" value="4.0.41108.0" />
    <param name="autoUpgrade" value="true" />
</object>
...
我尝试添加“溢出:自动”和边距/填充样式属性(显示滚动条,但实际上根本不滚动?),在
上设置静态大小,这两个属性都不起作用。请记住,即使在页面加载时间之后,此控件的高度也会发生变化(Silverlight控件会在不同高度的RootVisuals之间切换)

IE7的任何权威都知道如何规避这个问题吗?谢谢。

戴夫

有时似乎有用的是添加以下样式:

<style type="text/css">
html, body {
    height: 100%;
    overflow: auto;
}

body {
    padding: 0;
    margin: 0;
}

#silverlightControlHost {
    height: 100%;
    text-align:center;
}
</style>
(关于Silverlight论坛的Frank Lan)


HTH

我有一个类似的问题,我通过向html、body-min-width和height元素添加样式来解决它

像这样:

 html, body 
{
    height: 100%;
    overflow: auto;
     min-height:500px; 
     min-width:700px;
}

对我来说,它在Opera 12和IE 9上工作

你能发布你的CSS吗(如果有的话)?添加了唯一的CSS引用到讨论中的元素;没什么可看的。翻阅我的CSS代码,我在HTML和BODY元素上设置了所有这些属性。为了快速尝试,请在您的#silverlightControlHost样式中添加以下内容:“显示:块;位置:绝对;高度:自动;底部:0;顶部:0;左侧:0;右侧:0;”。最后但并非最不重要的一点:检查HTML页面标题中定义的HTML标准。。。没有正确的声明可能会改变模式(即所谓的“怪癖模式”),从而改变浏览器css的解释。没有好处:仍然缺少滚动条。Doctype=
Dispatcher.BeginInvoke(() =>
{
    double height = this.RenderSize.Height;
    double width = this.RenderSize.Width;
    //silverlightControlHost is the div which hold silverlight object
    HtmlPage.Document.GetElementById("silverlightControlHost").SetStyleAttribute("width", height.ToString() + "px");
    HtmlPage.Document.GetElementById("silverlightControlHost").SetStyleAttribute("height", width.ToString() + "px");
});
 html, body 
{
    height: 100%;
    overflow: auto;
     min-height:500px; 
     min-width:700px;
}