ListBoxItem背景颜色更改

时间:2013-07-20 11:54:58

标签: xaml coloranimation

我有一个ListBox,还有一些项目。当鼠标悬停时,如何更改ListBoxItem的背景?我尝试使用此代码,但它返回错误:

<Window.Resources>
        <Style TargetType="ListBoxItem">
            <Setter Property="Opacity" Value="0.6" />
            <Style.Triggers>
                <Trigger Property="IsSelected" Value="True">
                    <Trigger.Setters>
                        <Setter Property="Opacity" Value="1.0" />
                    </Trigger.Setters>
                </Trigger>
                <EventTrigger RoutedEvent="Mouse.MouseEnter">
                    <EventTrigger.Actions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Duration="0:0:0.3" Storyboard.TargetProperty="Background" To="Orange" />
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
                <EventTrigger RoutedEvent="Mouse.MouseLeave">
                    <EventTrigger.Actions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Duration="0:0:0.3" Storyboard.TargetProperty="Background" To="White" />
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
            </Style.Triggers>
        </Style>

    </Window.Resources>

1 个答案:

答案 0 :(得分:2)

使用ColorAnimation代替DoubleAnimation

<ColorAnimation Duration="0:0:0.3" 
                Storyboard.TargetProperty="Background.(SolidColorBrush.Color)" 
                To="Orange" />