Извините, если раньше об этом спрашивали, но я не смог найти решение того, что я ищу, в связанных вопросах или в Google.
В моем приложении я пытаюсь воссоздать диалоговое окно Words New Document, в списке слева от элементов и справа значок с текстом под ним. В Word он имеет оранжевый градиент при наведении курсора и более темный градиент при выборе элемента. У меня большая часть этого воссоздана, за исключением изменения цвета фона после выбора элемента. Вот код, который я использую для создания этого:
<ListView Margin="236,34,17,144" Name="listView1" HorizontalContentAlignment="Stretch">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="5" IsItemsHost="True" VerticalAlignment="Top" >
</UniformGrid>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate >
<StackPanel HorizontalAlignment="Center" Width="auto">
<Image Source="images/document32.png" HorizontalAlignment="Center"/>
<TextBlock Text="{Binding}" HorizontalAlignment="Center" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}" >
<Style.Triggers>
<Trigger Property="IsSelected" Value="true">
<Setter Property="Foreground" Value="Yellow" />
<Setter Property="Background" Value="Orange" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Foreground" Value="Black" />
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="1,0">
<GradientStop Color="#d3e7ff" Offset="0.986"/>
<GradientStop Color="#b0d2fc" Offset="0.5"/>
<GradientStop Color="#8ec1ff" Offset="0.51"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</ListView.ItemContainerStyle>
</ListView>
Так что это создает вид, который я собираюсь сделать, наводит указатель мыши, и когда я выбираю элемент в списке, он меняет текст шрифта на Желтый, но отказывается менять фон с синего на оранжевый по умолчанию и в идеале это был бы другой градиент в любом случае, а не залитый цвет. Спасибо за любую помощь.