我必须在WPF列表框中更改动画,因为我使用自己的动画。
浅蓝色是我的选择(我使用事件select_changed然后我将TextBlock.Background更改为浅蓝色)
蓝色选择是默认选项,我希望它是透明的,以便选择更加优雅。
有谁知道怎么做?
以下是我目前正在做的事情:
foreach (var item in myListBox.Items)
(item as TextBlock).Background = Brushes.White;
if (myListBox.SelectedItem != null)
(myListBox.SelectedItem as TextBlock).Background= Brushes.LightBlue;
myListBox.ScrollIntoView(myListBox.SelectedItem);
答案 0 :(得分:1)
只需将此Style
添加到您的ListBox
:
<Style x:Key="HiddenDefaultSelectionStyle" TargetType="{x:Type ListBoxItem}">
<Style.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent" />
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Transparent" />
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black" />
<SolidColorBrush x:Key="{x:Static SystemColors.ControlTextBrushKey}" Color="Black" />
</Style.Resources>
</Style>
您可以用您喜欢的颜色替换colour
Transparent
。我相信这些属性的名称是不言自明的。