How To Style Selected and MouseOver Items In A ListView
<p>I'm trying to change the look of the ListView Item when its Selected and when its hovered over. I have tried answers from other questions which suggest to use Style.Trigger but somehow that doesn't work for me.
It currently looks like this:
<a href="http://i.stack.imgur.com/SIyDp.png" rel="nofollow">Image of what it looks like now</a></p>

<p>Here is the code I use:</p>

<pre><code>&lt;UserControl x:Class="PROShine.TeamView"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:PROShine"
             xmlns:sys="clr-namespace:System;assembly=mscorlib"
             mc:Ignorable="d" 
             d:DesignHeight="300" d:DesignWidth="300"&gt;
    &lt;UserControl.Resources&gt;
        &lt;SolidColorBrush x:Key="NormalBorderBrush" Color="#FF111111" /&gt;
        &lt;SolidColorBrush x:Key="HeaderBackgroundColor" Color="#FF111111" /&gt;
        &lt;SolidColorBrush x:Key="HeaderBorderBrush" Color="#FF1e1e1e" /&gt;
        &lt;SolidColorBrush x:Key="NormalBrush" Color="#FF111111" /&gt;
        &lt;SolidColorBrush x:Key="PressedBrush" Color="#FF1e1e1e" /&gt;
        &lt;SolidColorBrush x:Key="SeperatorBrush" Color="#FF1e1e1e" /&gt;
        &lt;SolidColorBrush x:Key="ForegroundDefault" Color="White" /&gt;
        &lt;SolidColorBrush x:Key="SolidBorderBrush" Color="#FF111111" /&gt;
        &lt;SolidColorBrush x:Key="WindowBackgroundBrush" Color="#FF0d0d0d" /&gt;

        &lt;Style x:Key="GridViewColumnHeaderGripper" TargetType="Thumb"&gt;
            &lt;Setter Property="Width" Value="18"/&gt;
            &lt;Setter Property="Background" Value="{StaticResource SeperatorBrush}"/&gt;
            &lt;Setter Property="Template"&gt;
                &lt;Setter.Value&gt;
                    &lt;ControlTemplate TargetType="{x:Type Thumb}"&gt;
                        &lt;Border Padding="{TemplateBinding Padding}" Background="Transparent"&gt;
                            &lt;Rectangle HorizontalAlignment="Center" Width="1" Fill="{TemplateBinding Background}"/&gt;
                        &lt;/Border&gt;
                    &lt;/ControlTemplate&gt;
                &lt;/Setter.Value&gt;
            &lt;/Setter&gt;
        &lt;/Style&gt;

        &lt;Style x:Key="{x:Type GridViewColumnHeader}" TargetType="GridViewColumnHeader"&gt;
            &lt;Setter Property="HorizontalContentAlignment" Value="Center"/&gt;
            &lt;Setter Property="VerticalContentAlignment" Value="Center"/&gt;
            &lt;Setter Property="Foreground" Value="{StaticResource ForegroundDefault}"/&gt;
            &lt;Setter Property="Template"&gt;
                &lt;Setter.Value&gt;
                    &lt;ControlTemplate TargetType="GridViewColumnHeader"&gt;
                        &lt;Grid&gt;
                            &lt;Border Name="HeaderBorder" BorderThickness="0,0,0,1" BorderBrush="{StaticResource HeaderBorderBrush}" Background="{StaticResource HeaderBackgroundColor}" Padding="2,0,2,0"&gt;
                                &lt;ContentPresenter Name="HeaderContent" Margin="0,0,0,1" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/&gt;
                            &lt;/Border&gt;
                            &lt;Thumb x:Name="PART_HeaderGripper" HorizontalAlignment="Right" Margin="0,0,-9,0" Style="{StaticResource GridViewColumnHeaderGripper}"/&gt;
                        &lt;/Grid&gt;
                        &lt;ControlTemplate.Triggers&gt;
                            &lt;Trigger Property="IsMouseOver" Value="true"&gt;
                                &lt;Setter TargetName="HeaderBorder" Property="Background" Value="{StaticResource NormalBrush}"/&gt;
                            &lt;/Trigger&gt;
                            &lt;Trigger Property="IsPressed" Value="true"&gt;
                                &lt;Setter TargetName="HeaderBorder" Property="Background" Value="{StaticResource PressedBrush}"/&gt;
                                &lt;Setter TargetName="HeaderContent" Property="Margin" Value="1,1,0,0"/&gt;
                            &lt;/Trigger&gt;
                            &lt;Trigger Property="IsEnabled" Value="false"&gt;
                                &lt;Setter Property="Foreground" Value="White"/&gt;
                            &lt;/Trigger&gt;
                        &lt;/ControlTemplate.Triggers&gt;
                    &lt;/ControlTemplate&gt;
                &lt;/Setter.Value&gt;
            &lt;/Setter&gt;
            &lt;Style.Triggers&gt;
                &lt;Trigger Property="Role" Value="Floating"&gt;
                    &lt;Setter Property="Opacity" Value="0.7"/&gt;
                    &lt;Setter Property="Template"&gt;
                        &lt;Setter.Value&gt;
                            &lt;ControlTemplate TargetType="GridViewColumnHeader"&gt;
                                &lt;Canvas Name="PART_FloatingHeaderCanvas"&gt;
                                    &lt;Rectangle Fill="#60000000" Width="{TemplateBinding ActualWidth}" Height="{TemplateBinding ActualHeight}"/&gt;
                                &lt;/Canvas&gt;
                            &lt;/ControlTemplate&gt;
                        &lt;/Setter.Value&gt;
                    &lt;/Setter&gt;
                &lt;/Trigger&gt;
                &lt;Trigger Property="Role" Value="Padding"&gt;
                    &lt;Setter Property="Template"&gt;
                        &lt;Setter.Value&gt;
                            &lt;ControlTemplate TargetType="GridViewColumnHeader"&gt;
                                &lt;Border Name="HeaderBorder" BorderThickness="0,1,0,1" BorderBrush="{StaticResource NormalBorderBrush}" Background="{StaticResource HeaderBackgroundColor}"/&gt;
                            &lt;/ControlTemplate&gt;
                        &lt;/Setter.Value&gt;
                    &lt;/Setter&gt;
                &lt;/Trigger&gt;
            &lt;/Style.Triggers&gt;
        &lt;/Style&gt;

        &lt;Style x:Key="{x:Type ListView}" TargetType="{x:Type ListView}"&gt;
            &lt;Setter Property="SnapsToDevicePixels" Value="true"/&gt;
            &lt;Setter Property="OverridesDefaultStyle" Value="true"/&gt;
            &lt;Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/&gt;
            &lt;Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/&gt;
            &lt;Setter Property="ScrollViewer.CanContentScroll" Value="true"/&gt;
            &lt;Setter Property="VerticalContentAlignment" Value="Center"/&gt;
            &lt;Setter Property="Foreground" Value="{StaticResource ForegroundDefault}" /&gt;

            &lt;Setter Property="Template"&gt;
                &lt;Setter.Value&gt;
                    &lt;ControlTemplate TargetType="{x:Type ListView}"&gt;
                        &lt;Border Name="Border" BorderThickness="1" BorderBrush="{StaticResource SolidBorderBrush}" Background="{StaticResource WindowBackgroundBrush}"&gt;
                            &lt;ScrollViewer Style="{DynamicResource {x:Static GridView.GridViewScrollViewerStyleKey}}"&gt;
                                &lt;ItemsPresenter /&gt;
                            &lt;/ScrollViewer&gt;
                        &lt;/Border&gt;
                        &lt;ControlTemplate.Triggers&gt;
                            &lt;Trigger Property="IsGrouping" Value="true"&gt;
                                &lt;Setter Property="ScrollViewer.CanContentScroll" Value="false"/&gt;
                            &lt;/Trigger&gt;
                            &lt;Trigger Property="IsEnabled" Value="false"&gt;
                                &lt;Setter TargetName="Border" Property="Background" Value="{StaticResource SolidBorderBrush}"/&gt;
                            &lt;/Trigger&gt;
                        &lt;/ControlTemplate.Triggers&gt;
                    &lt;/ControlTemplate&gt;
                &lt;/Setter.Value&gt;
            &lt;/Setter&gt;
        &lt;/Style&gt;

        &lt;Style x:Key="ListViewItem" TargetType="{x:Type ListViewItem}"&gt;
            &lt;Setter Property="Foreground" Value="{StaticResource ForegroundDefault}"/&gt;
            &lt;Style.Triggers&gt;
                &lt;Trigger Property="IsSelected" Value="true"&gt;
                    &lt;Setter Property="Background" Value="#FF111111" /&gt;
                &lt;/Trigger&gt;
            &lt;/Style.Triggers&gt;
        &lt;/Style&gt;

    &lt;/UserControl.Resources&gt;
    &lt;Grid&gt;
        &lt;ListView Name="PokemonsListView" PreviewMouseLeftButtonDown="List_PreviewMouseLeftButtonDown" 
                        PreviewMouseMove="List_MouseMove"
                        Drop="List_Drop" 
                        DragEnter="List_DragEnter" 
                        AllowDrop="True" &gt;
            &lt;ListView.View&gt;
                &lt;GridView&gt;
                    &lt;GridViewColumn Header="Id" DisplayMemberBinding="{Binding Id}"/&gt;
                    &lt;GridViewColumn Header="Name" DisplayMemberBinding="{Binding Name}"/&gt;
                    &lt;GridViewColumn Header="Level" DisplayMemberBinding="{Binding Experience.CurrentLevel}"/&gt;
                    &lt;GridViewColumn Header="Status" DisplayMemberBinding="{Binding Status}"/&gt;
                    &lt;GridViewColumn Header="HP" DisplayMemberBinding="{Binding Health}"/&gt;
                    &lt;GridViewColumn Header="Remaining Exp" DisplayMemberBinding="{Binding Experience.RemainingExperience}"/&gt;
                    &lt;GridViewColumn Header="Item" DisplayMemberBinding="{Binding ItemHeld}"/&gt;
                &lt;/GridView&gt;
            &lt;/ListView.View&gt;
        &lt;/ListView&gt;
    &lt;/Grid&gt;
&lt;/UserControl&gt;
</code></pre>

<p>Anyone can tell me what I do wrong?</p>