2010-05-19 62 views
0

我一直在試圖讓Silverlight 3應用程序在將行添加到數據網格時自動調整大小。 我試過 this example 但我只是得到一個System.ExecutionEngineException與一個空的內部異常。我認爲這隻針對Silverlight 2。 誰能告訴我如何在Silverlight 3中做到這一點?自動調整Silverlight 3應用程序的大小

任何幫助,將不勝感激。

回答

0

我已經得到了這個工作如下:

下面的JavaScript添加到頁面與您的Silverlight對象:

function ResizeObject(height) { 
     var host = document.getElementById("silverlightControlHost"); 
     host.style.height = height + "px"; 
    } 

以下內容添加到您的Silverlight代碼隱藏:

public MainPage() 
    { 
     InitializeComponent(); 
     this.Loaded += new RoutedEventHandler(Page_Loaded); 
     this.yourRootElement.LayoutUpdated += new EventHandler(LayoutRoot_LayoutUpdated); 
    } 

    private void LayoutRoot_LayoutUpdated(object sender, EventArgs e) 
    { 
     HtmlPage.Window.Invoke("ResizeObject", new object[] { this.yourRootElement.RenderSize.Height }); 
    } 

請注意,「ResizeObject」是指您的網頁上的JavaScript功能。