wpf 将Style应用到 ListView 中的 ListViewItem 元素

时间:2023-03-08 21:30:33

例: 为每个条目元素设置右键菜单

1. 新建右键菜单元素和样式元素

注意: 同时设置样式元素的 TargetType 属性和 x:Key 属性, 将样式元素限定为应用于 ListViewItem 类型元素并且需要显示指定才可应用

<Window.Resources>
<ContextMenu x:Key="ContextMenuTest">
<MenuItem Header="右键菜单1"/>
<MenuItem Header="右键菜单2"/>
<MenuItem Header="右键菜单3"/>
</ContextMenu>
<Style x:Key="StyleContextMenuTest" TargetType="{x:Type ListViewItem}">
<Setter Property="ContextMenu" Value="{StaticResource ContextMenuTest}"></Setter>
</Style>
</Window.Resources>

2.  将 ListView 的 ItemContainerStyle 属性设置为相应的样式, 就会将此样式应用于此列表视图控件中的所有条目

        <ListView SelectionMode="Single" ItemContainerStyle="{StaticResource StyleContextMenuTest}">
<ListView.View>
<GridView>
<GridViewColumn Width="100" Header="ID" DisplayMemberBinding="{Binding ID}">
<GridViewColumn Width="150" Header="DateTime" DisplayMemberBinding="{Binding DateTime}"/>
</GridView>
</ListView.View>
</ListView>