我想在我的 Metro 应用程序中显示项目列表。我只想展示它们。我不想要任何种类的选择、鼠标悬停、键盘控制或动画效果。
这些项目将与 ItemTemplate 一起显示,列表将是数据绑定的,我想要滚动(垂直和水平)。
最简单的方法是什么?ListView 有很多默认值,这使得“简单地显示”项目成为一项艰巨的任务。
我想在我的 Metro 应用程序中显示项目列表。我只想展示它们。我不想要任何种类的选择、鼠标悬停、键盘控制或动画效果。
这些项目将与 ItemTemplate 一起显示,列表将是数据绑定的,我想要滚动(垂直和水平)。
最简单的方法是什么?ListView 有很多默认值,这使得“简单地显示”项目成为一项艰巨的任务。
通过设置 SelectionMode="None" 和 IsHitTestVisible="False",ListView 可以摆脱几乎所有你想要的东西。这将使您无法使用鼠标或键盘选择或突出显示任何元素。您仍将获得滚动并支持滚动交互。但是,您仍然会得到动画。
否则,您可能不得不考虑使用 ItemsControl 和 ScrollViewer 来获得您想要的效果。
在第一个实例中使用 ItemsControl。您可以根据需要添加数据模板并使用 ItemsPanel 控件来应用您的布局。例如,下面的 StackPanel 允许将方向切换为水平。
<ItemsControl ItemsSource="{Binding Users}" >
<ItemsControl.ItemTemplate>
<DataTemplate>
<Image Source="{Binding ImageUri}" Width="40" Height="40" Margin="5" />
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>