Автоматическое изменение размера приложений Silverlight 3 - PullRequest
0 голосов
/ 19 мая 2010

Я пытался заставить приложение Silverlight 3 автоматически изменять размер при добавлении строк в сетки данных. я пробовал этот пример но я просто получаю System.ExecutionEngineException с нулевым внутренним исключением. Я думаю, что это нацелено только на Silverlight 2. Может кто-нибудь сказать мне, как это сделать в Silverlight 3?

Любая помощь по этому вопросу будет принята с благодарностью.

1 Ответ

0 голосов
/ 19 мая 2010

У меня это работает со следующим:

Добавьте следующий 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 на вашей веб-странице.

...