行がデータグリッドに追加されると、Silverlight 3 アプリケーションのサイズが自動的に変更されるようにしようとしています。この例を試してみまし
たSystem.ExecutionEngineException
が、null の内部例外が発生します。これは Silverlight 2 のみを対象としていると思います。Silverlight 3 でこれを行う方法を教えてもらえますか?
これに関するヘルプは大歓迎です。
行がデータグリッドに追加されると、Silverlight 3 アプリケーションのサイズが自動的に変更されるようにしようとしています。この例を試してみまし
たSystem.ExecutionEngineException
が、null の内部例外が発生します。これは Silverlight 2 のみを対象としていると思います。Silverlight 3 でこれを行う方法を教えてもらえますか?
これに関するヘルプは大歓迎です。
私はこれを次のように動作させました:
Silverlight オブジェクトを含むページに次の JavaScript を追加します。
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」は Web ページの JavaScript 関数を指すことに注意してください。