3

我正在制作这个 Metro 应用程序,它有一个包含 3 列的父网格。在 col# 1 中,我有这个登录表单。我希望它在应用程序加载时出现在中心。在 col# 0 和 col# 2 中分别使用 Sign Up 和 Recover 密码。所以我把网格放在滚动查看器中:`

<ScrollViewer HorizontalScrollBarVisibility="Auto"
              VerticalScrollBarVisibility="Disabled">

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*" />
        <RowDefinition Height="3*" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*" /> <!--For Sign Up-->
        <ColumnDefinition Width="*" /> <!--For Sign In-->
        <ColumnDefinition Width="*" /> <!--To Recover Password-->
    </Grid.ColumnDefinitions>`

我不想明确设置网格的宽度。因为那样我要么必须针对非常大的分辨率或非常小的分辨率优化尺寸。我想要的是中间的 col#1,在 col#1 的两侧可以看到一些 col#0 和 col#2。

我应该将网格的宽度设置为什么,以便无论分辨率如何,它看起来都是一致的?以及如何自动滚动并将 col#1 放在中间?

4

1 回答 1

1

我认为您需要以编程方式捕获屏幕宽度。我是 HTML/JS 开发人员,所以我不知道 XAML/C# 中的属性是什么。然后你可以设置你的网格大小相对于它。然后,如果它发生变化,您的网格会更大。就滚动而言,我认为您正在寻找类似于我在这里写的内容(http://www.codefoster.com/post/2012/06/24/How-to-Make-Your-Grid-Pan -Automatically.aspx),但您必须在 JavaScript 和 C# 之间进行转换,因为我是用 JS 编写的。希望有帮助。

于 2012-06-30T21:04:35.960 回答