在XAML中创建一个全屏GridView

时间:2012-07-03 23:07:44

标签: c# xaml windows-8

我想为Windows 8中的Metro Style应用程序创建一个全屏GridView控件,该应用程序会增长并适应用户更改其屏幕分辨率。

我正在尝试在Windows 8上模仿日历应用程序,如果您在显示器之间交换地铁屏幕,每个方块的大小(日期)会发生变化,以便屏幕始终显示。

通常你会有一个流畅的ItemTemplate我需要确保整个屏幕已满,所以有时GridView项目会很小(在平板电脑上运行时),有时它们会很大(运行时)我的桌面)。

我可以使用XAML实现这一点,还是在屏幕尺寸发生变化时更改GridView的ItemTemplate时,我是否需要变得时髦?

3 个答案:

答案 0 :(得分:3)

执行所需操作的其他xaml框架中的控件称为UniformGrid。它允许您指定行数或列数,然后将每个子项调整为适当的大小。

UniformGrid当前没有出现在WinRT xaml堆栈中,但是端口并不困难(我已经完成了一次但没有访问源)。您可以从Jeff Wilcox - Uniform Grid获取Silverlight版本的来源。

对于日历样式的应用程序,您将为行提供统一的网格,然后每行将有一列用于列..

答案 1 :(得分:1)

我认为你应该能够将GridView放在网格中,这应该考虑灵活的布局。只要Grid是您分配给Windows.UI.Xaml.Window.Current属性的页面的根元素,并且GridView是Grid的唯一子元素,它应该水平和垂直拉伸以填充屏幕。

要获得Calendar类型外观,可以将GridView放在Grid的第二行,并在第一行上显示标题等。

答案 2 :(得分:0)

也许你可以使用Viewbox control