2010-10-25 33 views
0

我想將Silverlight應用程序嵌入到網頁中,並使包含silverlight控件的div的高度/寬度與Silverlight控件的實際大小的尺寸匹配。將DIV的高度和寬度調整爲Silverlight控件的實際大小

我基本上想要div伸展以適應silverlight控件的大小。我不知道silverlight控件在加載之前會有多大,因爲它會動態添加數據並添加控件。

我想避免決鬥滾動條,只使用瀏覽器滾動條。

我需要這個工作在IE和Firefox。

有沒有辦法做到這一點?

回答

1

您可以設置高度爲100%,把

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

在它的結束,使之充滿父控件。

0

是的,它可以做到。有兩種方法:

  • 將您的插件控件設置爲100%的高度和寬度,然後使用其周圍的div來控制其大小。然後調用通過JavaScript的橋javascript函數,並且必須使用document.getElementById()或jQuery的
  • 忘記控制股利和使用HtmlPage.Plugin從託管代碼,功能操作div,這避免了JavaScript的橋樑,讓您訪問的插件容器本身,那麼你可以像這樣設置寬度/高度:

    HtmlPage.Plugin.SetStyleAttribute(「height」,height +「px」);

注意FFox約v3.6.8如果你試圖操縱插件式的反覆屬性過快起有一個問題,我不知道是不是最近發佈v3.6.11來自同一問題的困擾。

+0

我應該調用什麼事件「HtmlPage.Plugin.SetStyleAttribute(」height「,height +」px「);」從? 如何獲得silverlight控件的實際大小? – jesse 2010-10-25 22:03:43

+0

@jesse:你應該可以在silverlight應用程序的'Load'事件之後隨時使用它,我個人使用它來響應用戶的輸入來收縮/展開我在HTML頁面上的SL控件。 'HtmlPage.Plugin'是HTML對象控件,所以你可以使用GetStyleAttribute()來讀取它的樣式(儘管它可能不會告訴你),或者你可以使用Silverlight應用程序主窗體的ActualHeight/ActualWidth。 – slugster 2010-10-25 22:49:03

相關問題