Silverlight - Сделайте такой же размер, как рамка браузера.

Есть ли способ масштабировать приложение silverlight до 100% ширины и 100% высоты фрейма браузера, в который оно встроено?

Я знаю о полноэкранных возможностях, хотелось бы, чтобы он хорошо сидел в браузере.


person JSmyth    schedule 13.01.2009    source источник


Ответы (3)


Использование Width=”Auto” Height=”Auto” в вашем LayoutRoot приведет к тому, что объект Silverlight заполнит пространство, которое имеет тег объекта. По умолчанию (TestPage.html) это object ... width = "100%" height = "100%" Вы также можете установить d: DesignWidth = "640" и d: DesignHeight = "480" таким образом в Expression Blend делать макет проще.

person texmex5    schedule 13.01.2009
comment
Спасибо, ключевое слово Auto действительно было тем, что мне было нужно. Так просто, но так легко пропустить! - person JSmyth; 14.01.2009

Удалите атрибуты Width и Height из корневого UserControl.

person Michael S. Scherotter    schedule 13.01.2009

Этот Javascript сделает это, см. Этот ответ:

private bool _hasResized;

protected override Size ArrangeOverride(Size finalSize)
{
    if (!_hasResized)
    {
        HtmlPage.Document.GetElementById("silverlightControlHost").SetStyleAttribute("height", finalSize.Height.ToString());
        _hasResized = true;
    }

    return base.ArrangeOverride(finalSize);
}
person Chris S    schedule 20.05.2010