我有一個包含一些ListViewItems的ListView。默認情況下,選擇項目會使其背景變爲深藍色。我想申請一種風格,選擇一個項目不會改變它的外觀。更改WPF ListViewItem的選擇顏色
在我的XAML我已經達到了這個:
<Style TargetType="ListViewItem">
<Style.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent"/>
</Style.Resources>
</Style>
不幸的是,這並沒有做的伎倆。它只是簡單地選擇白色而不是藍色。
有沒有人有想法?
最良好的祝願, 基督教
編輯: 示例代碼:
<Window.Resources>
<Style TargetType="ListViewItem">
<Style.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}"
Color="Black"/>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}"
Color="Transparent"/>
</Style.Resources>
</Style>
</Window.Resources>
<ListView x:Name="lvTestRun" ItemsSource="{Binding Path=TestRunData}" Margin="177,26,8,53.277" SelectionMode="Multiple">
<ListView.View>
<GridView>
<GridViewColumn Header="Status"/>
<GridViewColumn Header="Duration"/>
<GridViewColumn Header="Start Time"/>
<GridViewColumn Header="End Time"/>
</GridView>
</ListView.View>
</ListView>
爲了再現這一點,你可能需要一個單一的ListViewItem的背景色設置爲類似綠色或紅色。
感謝您的快速響應。我試過你的代碼,它給了我幾乎所需的東西。但是:在點擊物品之前,他們已經有了背景顏色。其中一些是綠色的,一些是紅色的,一些是黃色的,有些是橙色的。現在,當我選擇其中的一些時,它們都變白了。白色是因爲代碼中的「透明」。如果我將「透明」更改爲黑色,則全部變黑。我想達到的是他們保持與以前相同的顏色。那可能嗎?如果要告訴選擇的樣式資源,它不應該改變「HighlightBurshKey」? – Christian 2010-11-22 15:26:30