我試圖將選定的ListViewItem
上的默認淺灰色突出顯示爲ListView
聚焦時顯示的藍色突出顯示。我一直試圖調和不同的StackOverflow答案和在線來源,但我還沒有弄清楚我需要什麼樣的XAML。我有以下幾點:WPF - 使用GridView選擇未聚焦的ListViewItem的顏色
<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
是重點不突出?