我已经阅读了文档并尝试了许多示例,但老实说,这些示例看起来像一个大杂烩,似乎没有多大意义。
任何人都可以推荐任何易于遵循的教程或文档,了解如何在 XAML 中设置 ListView 控件的样式吗?(没有表情混合)
查看这 2 部分“WPF ListView 样式教程”文章:http ://blog.vascooliveira.com/wpf-listview-styling-tutorial-part-i/
注意:在我的计算机上,XML (XAML) 代码无法正确显示,< 和 > 符号显示为“<”和“>”。
设置 ListView 样式的两个主要常见技巧是设置项目的样式和更改列表框用于布置项目的容器类型。
为项目设置样式
这基本上意味着将ItemTemplate
xaml 中的内容设置为知道如何显示列表框内容的内容ItemsSource
,通常使用绑定。
例如,如果您ObservableCollection<Customer>
绑定到客户定义为的列表框:
public class Order
{
public int Id { get; set; }
public string OrderReference { get; set; }
public string CustomerName { get; set; }
}
然后,您可以使用数据模板为项目设置样式,如下所示:
<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding CustomerName}" />
<TextBlock Text="{Binding OrderReference}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
一个基本的例子,但你明白了。
更改项目的布局方式
本质上,您可能不希望垂直列出项目的默认行为,因此您可以使用该属性将列表框中使用的容器控件更改为更合适的内容ItemsPanel
。例如,如果您有一个项目模板,它看起来像 Windows 资源管理器中“大图标”视图中的项目,那么您可能希望列表框使用 aWrapPanel
而不是 a StackPanel
(我很确定它是 a StackPanel
):
<ListBox>
<ListBox.ItemsPanel>
<DataTemplate>
<WrapPanel>
<ContentPresenter />
</WrapPanel>
</DataTemplate>
</ListBox.ItemsPanel>
</ListBox>
又是一个基本的例子。
我将所有这些代码从内存中写到 StackOverflow 中,如果其中有一些拼写错误或记错的部分,我深表歉意。
HTH。