在WinRT中选择XAML的ListView和GridView

时间:2012-06-05 19:30:47

标签: windows-8 windows-runtime windows-store-apps winrt-xaml

XAML中的GridView和ListView似乎是相同的控件。

开发者如何在两者之间做出选择?

2 个答案:

答案 0 :(得分:48)

GridView控件通常水平滚动。此外,您将看到项之间的一些本机间距大于ListView中的间距。由于打算如何在Windows应用商店应用中使用控件,因此存在此间距。 (继续阅读)

  • 与ListView类似,它继承自ItemsControl。
  • 与使用GroupStyle的ListView组一样。
  • 与ListView一样,它支持两种新的虚拟化策略。
  • 与ListView类似,它支持不同的选择模式。

示例语法:

<GridView>
    <x:String>Item 1</x:String>
    <x:String>Item 2</x:String>
</GridView>

ListView控件通常垂直滚动。

示例语法:

<ListView>
    <x:String>Item 1</x:String>
    <x:String>Item 2</x:String>
</ListView>

这是答案

两者之间的一般区别在于它们的观点。 GridView往往出现在FullView,FillView和Portait中。由于其垂直方向,ListView往往出现在SnapView中。两个控件都可以出现在任一视图中,但这是两个控件的局部转移。

enter image description here

  

MSDN:ListView和GridView控件都用于显示   您应用中的数据集合。它们具有类似的功能,但是   显示数据不同。它们都来自ItemsControl   类。当我们谈论ItemsControl时,信息适用于两者   ListView和GridView控件。

     

ListView显示垂直堆叠的数据。它经常被用来表示   有序的项目列表,例如电子邮件列表或搜索结果。   它在列表项的主 - 详细信息场景中也很有用   仅包含少量信息和所选内容的详细信息   项目单独显示。

     

GridView显示水平堆叠的数据。它通常用于   您需要显示每个项目的丰富可视化,这需要更多   空间,例如照片库。*

答案 1 :(得分:0)

用户将注意到的唯一区别是触摸选择手势。对于GridView,选择手势是向上&gt;向下滑动。对于ListView,它是一个Left-&gt; Right滑动。我假设这样,列表可以区分选择滑动和滚动尝试。

在Xaml中,您还会注意到默认的ItemsPanel是不同的。 GridView的ItemsWrapGrid和ListView的ItemsStackPanel(从Win8.1虚拟化面板开始;在8.0中是WrapGrid和StackPanel)。这可能会影响您在Xaml中进行自定义的属性。