我正在制作这个 Metro 应用程序,它有一个包含 3 列的父网格。在 col# 1 中,我有这个登录表单。我希望它在应用程序加载时位于中心位置。分别在 col# 0 和 col# 2 中注册和恢复密码。所以我把网格放在滚动查看器中:`
<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 放在中间?
最佳答案
我认为您需要以编程方式捕获屏幕宽度。我是 HTML/JS 开发人员,所以我不知道 XAML/C# 中的属性是什么。然后你可以相对于它设置你的网格大小。然后,如果它发生变化,您的网格将更大。 至于滚动,我想你正在寻找像我在这里写的东西(http://www.codefoster.com/post/2012/06/24/How-to-Make-Your-Grid-Pan -Automatically.aspx),但你必须在 JavaScript 和 C# 之间进行转换,因为我是用 JS 编写的。希望对您有所帮助。
关于c# - 使用 C# 和 XAML 在 Metro 应用程序中自动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11264636/