我一直试图让一个Silverlight 3应用程序在将行添加到datagrids时自动调整大小。
我试过了
this example
但我只得到一个带有空内异常的System.ExecutionEngineException
。我认为这仅针对Silverlight 2。
谁能告诉我如何在Silverlight 3中做到这一点?
对此的任何帮助都将非常感激。
答案 0 :(得分:0)
我使用了以下内容:
将以下javascript添加到包含silverlight对象的页面:
function ResizeObject(height) {
var host = document.getElementById("silverlightControlHost");
host.style.height = height + "px";
}
将以下内容添加到您的silverlight codebehind:
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函数。