在silverlight中设置相对于屏幕分辨率的控件宽度

时间:2012-09-06 13:06:14

标签: silverlight xaml

我无法根据屏幕分辨率设置边框控制的大小。

我想将Border的宽度指定为屏幕分辨率的80%[仅宽度]。但我无法这样做。

1 个答案:

答案 0 :(得分:2)

最简单的方法是将边框放在网格中:

<Grid x:Name="LayoutRoot"
        Background="White">
    <Grid.ColumnDefinitions>
        <!--80% column-->
        <ColumnDefinition Width="8*"></ColumnDefinition>
        <!--20% column-->
        <ColumnDefinition Width="2*"></ColumnDefinition>
    </Grid.ColumnDefinitions>

    <Border Grid.Column="0"
            Background="Red"></Border>
    <Border Grid.Column="1"
            Background="Yellow"></Border>
</Grid>

编辑:
对不起,我刚才意识到我没有正确地阅读你的问题。你在谈论屏幕分辨率。我的示例将网格的第一列设置为浏览器窗口大小的80%。如果它是你希望的屏幕分辨率,我认为你必须使用javascript来获取值,然后使用代码将对象设置为正确的大小:

var width= HtmlPage.Window.Eval("screen.availWidth");
var height= HtmlPage.Window.Eval("screen.availHeight");