XNA / XAML鼠标悬停时的边框颜色动画

时间:2012-09-26 13:02:15

标签: xaml animation xna storyboard mouseover

我在XNA和XAML中制作图库。我需要有边框的图像和鼠标悬停我想要更改边框颜色。我尝试了一些不起作用的不同东西。当IMAGE是mouseOvered时,应该触发动画以更改边框颜色。这是我的代码:

 <Border Name="myBorder"
            BorderThickness="5"
            BorderBrush="White"
            Width="100"
            Height="100"
            Padding="0"
            Margin="15"
            CornerRadius="10">
        <Border.Style>
            <Style>
                <Style.Triggers>
                    <Trigger Property="Image.IsMouseOver" Value="True">
                        <Setter Property="Border.BorderBrush" Value="Yellow"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
        </Border.Style>
            <Image Name="myImage1" 
                   HorizontalAlignment="Center" 
                   Stretch="Fill" />
    </Border>

我也使用了EventTrigger和Storyboard。有人知道怎么做吗?

1 个答案:

答案 0 :(得分:1)

好的,我通过this帖子

解决了这个问题

我应该从边框定义中删除BorderBrush。现在这个有效:

        <Border Name="myBorder"
            BorderThickness="5"
            Width="100"
            Height="100"
            Padding="0"
            Margin="15"
            CornerRadius="10">
        <Border.Style>
            <Style TargetType="{x:Type Border}">
                <Style.Triggers>
                    <Trigger Property="Image.IsMouseOver" Value="True">
                        <Setter Property="Border.BorderBrush" Value="Yellow"/>
                    </Trigger>
                    <Trigger Property="Image.IsMouseOver" Value="False">
                        <Setter Property="Border.BorderBrush" Value="White"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
        </Border.Style>
        <Image Name="myImage1" HorizontalAlignment="Center" Stretch="Fill" />
    </Border>