WPF listbox隔行换色
时间: 2023-09-05 17:11:06 浏览: 104
你可以使用 ListBox 控件的 ItemContainerStyle 属性来定义 ListBoxItem 的样式,从而实现隔行换色的效果。
以下是一个示例代码,其中使用了 DataTrigger 来判断 ListBoxItem 是否为奇数行,并设置不同的背景色。
```xml
<ListBox>
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Background" Value="White" />
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ListBoxItem}, Converter={StaticResource ListIndexConverter}}" Value="Odd">
<Setter Property="Background" Value="#F5F5F5" />
</DataTrigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
```
需要注意的是,需要定义一个 ListIndexConverter 来将 ListBoxItem 转换为它在 ListBox 中的索引,以便在 DataTrigger 中进行奇偶判断。
阅读全文