2011-03-22 66 views
11

首先,我是WPF的新手。如何将样式应用于WPF中的ListViewItems?


我有我的项目这种风格的准备:

<Style x:Key="lvItemHover" TargetType="{x:Type ListViewItem}"> 
     <Style.Triggers> 
      <Trigger Property="IsMouseOver" Value="true"> 
       <Setter Property="Foreground" Value="Black" /> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 

如何给这种风格的项目在我的ListView

+0

哪里这是风格吗? – BoltClock 2011-03-22 10:05:38

+2

资源...... – Vercas 2011-03-22 10:19:43

回答

19

试试这个

 <ListView x:Name="listView"> 
     <ListView.ItemContainerStyle> 
      <Style TargetType="{x:Type ListViewItem}"> 
       <Style.Triggers> 
        <Trigger Property="IsMouseOver" Value="true"> 
        <Setter Property="Foreground" Value="Black" /> 
        </Trigger> 
       </Style.Triggers> 
      </Style> 
     </ListView.ItemContainerStyle> 
     <ListViewItem>Item1</ListViewItem> 
     <ListViewItem>Item2</ListViewItem> 
     <ListViewItem>Item3</ListViewItem> 
    </ListView> 
+0

谢谢!有效! :D – Vercas 2011-03-22 10:21:44

+0

必须删除x:Key属性... – Vercas 2011-03-22 10:26:07

4

你有很多选择

  • 从您的风格x:Key="lvItemHover" ,它会得到应用于所有ListViewItems

  • 应用样式每个 ListViewItem像

    <ListViewItem Style="{StaticResource lvItemHover}">Item1</ListViewItem>

  • 把你的风格ListView.ItemContainerStyle内为上述职位

0

这是从静态的资源定义ListViewItem的风格最简单的方法:

<ListView x:Name="listView" ItemContainerStyle="{StaticResource lvItemHover}"> 
 
    </ListView>

相关问题