Я пытаюсь изменить светло-серую подсветку по умолчанию на выбранном ListViewItem
, чтобы она была синей подсветкой, которая появляется, когда фокусировка ListView
. Я пытался согласовать разные ответы и источники StackOverflow онлайн, но я еще не выяснил, какой XAML мне нужен. У меня есть следующее:
<ListView ItemContainerStyle="{StaticResource checkableListViewItem}"
SelectionMode="Multiple"
View="{StaticResource fieldValueGridView}"/>
Ресурс, на который ссылается View
:
<GridView x:Key="fieldValueGridView" AllowsColumnReorder="False">
<GridViewColumn Header="Field">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock FontWeight="Bold" Text="{Binding Path=DisplayName}"/>
<TextBlock FontWeight="Bold" Text=": "/>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=FieldValue}"/>
</GridView>
И указанный ресурс ItemContainerStyle
:
<Style TargetType="ListViewItem" BasedOn="{StaticResource {x:Type ListViewItem}}"
x:Key="checkableListViewItem">
<Setter Property="IsSelected" Value="{Binding Path=IsChecked}" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Top" />
</Style>
Свойство ListView
IsEnabled
изменяется, если это имеет значение. Я хотел как-то включить <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="{x:Static SystemColors.HighlightColor}"/>
или что-то подобное, чтобы выделить выбранные ListViewItem
с несфокусированным ListView
.
У меня есть следующий стиль, но это, похоже, не влияет на ListViewItem
s в моих ListView
, и я подумал, что причиной может служить GridView
, который я использую Когда я попытался переопределить свойство Template
, свойство View
было проигнорировано, поэтому мой GridView
не отображался.
<Style TargetType="ListViewItem">
<Style.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}"
Color="{x:Static SystemColors.HighlightColor}"/>
</Style.Resources>
</Style>
Как мне выделить синим цветом выделенные элементы в моем ListView
, когда этот ListView
не сфокусирован?