【问题标题】:Adjust DIV height and width to actual size of Silverlight control将 DIV 高度和宽度调整为 Silverlight 控件的实际大小
【发布时间】:2010-10-25 21:38:53
【问题描述】:

我想将 silverlight 应用程序嵌入到网页中,并使包含 silverlight 控件的 div 的高度/宽度与 silverlight 控件的实际大小的尺寸相匹配。

我本质上希望 div 拉伸以适应 silverlight 控件的大小。我不知道 silverlight 控件在加载之前的大小,因为它正在提取数据并动态添加控件。

我想避免使用滚动条,只使用浏览器滚动条。

我需要它在 IE 和 Firefox 中都可以工作。

有没有办法做到这一点?

【问题讨论】:

    标签: asp.net silverlight


    【解决方案1】:

    您可以将高度设置为 100% 并放置一个

    <div style="clear:both"></div>
    

    在它的末尾使其填充父控件。

    【讨论】:

      【解决方案2】:

      是的,它可以做到。有两种方法:

      • 将您的插件控件设置为 100% 的高度和宽度,然后在其周围使用 div 来控制其大小。然后通过 javascript 桥调用 javascript 函数,并让该函数使用 document.getElementById() 或 jQuery 操作 div
      • 忘记控制 div 并从您的托管代码中使用 HtmlPage.Plugin,这样可以避免 javascript 桥并让您可以访问插件容器本身,然后您可以像这样设置宽度/高度:

        HtmlPage.Plugin.SetStyleAttribute("height", height + "px");

      请注意,从 v3.6.8 开始的 FFox 会出现问题,如果您尝试过快地反复操作插件样式属性,我不知道最近发布的 v3.6.11 是否存在同样的问题。

      【讨论】:

      • 我应该调用什么事件 "HtmlPage.Plugin.SetStyleAttribute("height", height + "px");"从?如何获得 silverlight 控件的实际大小?
      • @jesse:在silverlight 应用程序的Load 事件之后,您应该可以随时使用它,我个人使用它来响应用户输入来缩小/扩展我在HTML 页面上的SL 控件. HtmlPage.Plugin 是 HTML 对象控件,因此您可以使用 GetStyleAttribute() 来读取它的样式(虽然它可能不会告诉您太多),或者您可以使用 silverlight 应用程序主窗体的 ActualHeight/ActualWidth。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-27
      • 1970-01-01
      • 2014-11-10
      • 1970-01-01
      • 2015-05-19
      相关资源
      最近更新 更多