Xaml 为什么不是';我的可视状态管理器是否为pointerover工作?

Xaml 为什么不是';我的可视状态管理器是否为pointerover工作?,xaml,windows-runtime,winrt-xaml,Xaml,Windows Runtime,Winrt Xaml,这是我的标记 <Grid Height="50" x:Name="TextGrid"> <VisualStateManager.VisualStateGroups> <VisualStateGroup x:Name="CommonStates"> <VisualState x:Name="Normal"/> <VisualState x:Name="PointerOver">

这是我的标记

<Grid Height="50"  x:Name="TextGrid">
<VisualStateManager.VisualStateGroups>
    <VisualStateGroup x:Name="CommonStates">
        <VisualState x:Name="Normal"/>
        <VisualState x:Name="PointerOver">
            <Storyboard>
                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="TestGrid" Storyboard.TargetProperty="Background">
                    <DiscreteObjectKeyFrame KeyTime="0" Value="Green"/>
                </ObjectAnimationUsingKeyFrames>
                <ObjectAnimationUsingKeyFrames Storyboard.TargetName="TestGrid" Storyboard.TargetProperty="Foreground">
                    <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemPointerOverBackgroundThemeBrush}"/>
                </ObjectAnimationUsingKeyFrames>
            </Storyboard>

        </VisualState>
    </VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid.Transitions>
    <TransitionCollection>
        <EntranceThemeTransition></EntranceThemeTransition>
    </TransitionCollection>

</Grid.Transitions>
<Grid x:Name="TestGrid" Background="SeaShell">
    <TextBlock Text="test" x:Name="testTextBlock" VerticalAlignment="Center" Foreground="OrangeRed" FontFamily="Calibri" FontSize="20" FontWeight="Light"></TextBlock>
</Grid>


我不明白为什么指针指向效果不起作用。

我们现在看到的是什么?我看到了一些视觉状态,但你没有说它们是什么。我相信当你将鼠标光标悬停在按钮上方时,按钮会进入
指针上方的状态,所以如果这是一个按钮模板,它应该可以工作,但是,如果这只是一个
用户控件
,您实际上需要处理一个指针事件,并调用VisualStateManager以转换到控件的
指针上方
状态,然后在指针退出控件时返回到另一个状态。

我们现在看到的是什么?我看到了一些视觉状态,但你没有说它们是什么。我相信当你将鼠标光标悬停在按钮上方时,按钮会进入
指针上方的状态,所以如果这是一个按钮模板,它应该可以工作,但是,如果这只是一个
用户控件
,您实际上需要处理一个指针事件,并调用VisualStateManager以转换到控件的
指针上方
状态,然后在指针退出控件时返回到另一个状态。

我们现在看到的是什么?我看到了一些视觉状态,但你没有说它们是什么。我相信当你将鼠标光标悬停在按钮上方时,按钮会进入
指针上方的状态,所以如果这是一个按钮模板,它应该可以工作,但是,如果这只是一个
用户控件
,您实际上需要处理一个指针事件,并调用VisualStateManager以转换到控件的
指针上方
状态,然后在指针退出控件时返回到另一个状态。

我们现在看到的是什么?我看到了一些视觉状态,但你没有说它们是什么。我相信当你将鼠标光标悬停在按钮上方时,按钮会进入
指针上方的状态,所以如果这是一个按钮模板,它应该可以工作,但是,如果这只是一个
用户控件
——您实际上需要处理一个指针事件,并调用VisualStateManager以转换到控件的
指针上方
状态,然后在指针退出控件时返回到另一个状态。

a。)我认为WinRT TextBlock没有后台属性,这需要快速编辑模板以添加支持它的方法。b、 )您将需要在DoubleAnimation中使用关键帧而不是ObjectAnimation的彩色动画。可以在午餐后提供示例;)谢谢你的反馈。我更新了它并将其嵌套在网格中。我知道我在这里遗漏了一些基本的东西。看来我必须让你再等一段时间,然后我才能提供一个例子。我可能会建议一个相对简单的方法来实现你的目标。只需偷取一个HyperlinkButton模板,删除除指针外的所有视觉状态,并根据需要对其进行编辑。因为您尝试使用的动画类型是针对模板内容而不是依赖项的,所以您的状态将起作用(我假设您已经从模板复制/粘贴了这些部分)。否则,我应该在几个小时内有更多的空闲时间。a.)我认为WinRT TextBlock没有后台属性,这需要快速编辑模板以添加支持它的方法。b、 )您将需要在DoubleAnimation中使用关键帧而不是ObjectAnimation的彩色动画。可以在午餐后提供示例;)谢谢你的反馈。我更新了它并将其嵌套在网格中。我知道我在这里遗漏了一些基本的东西。看来我必须让你再等一段时间,然后我才能提供一个例子。我可能会建议一个相对简单的方法来实现你的目标。只需偷取一个HyperlinkButton模板,删除除指针外的所有视觉状态,并根据需要对其进行编辑。因为您尝试使用的动画类型是针对模板内容而不是依赖项的,所以您的状态将起作用(我假设您已经从模板复制/粘贴了这些部分)。否则,我应该在几个小时内有更多的空闲时间。a.)我认为WinRT TextBlock没有后台属性,这需要快速编辑模板以添加支持它的方法。b、 )您将需要在DoubleAnimation中使用关键帧而不是ObjectAnimation的彩色动画。可以在午餐后提供示例;)谢谢你的反馈。我更新了它并将其嵌套在网格中。我知道我在这里遗漏了一些基本的东西。看来我必须让你再等一段时间,然后我才能提供一个例子。我可能会建议一个相对简单的方法来实现你的目标。只需偷取一个HyperlinkButton模板,删除除指针外的所有视觉状态,并根据需要对其进行编辑。因为您尝试使用的动画类型是针对模板内容而不是依赖项的,所以您的状态将起作用(我假设您已经从模板复制/粘贴了这些部分)。否则,我应该在几个小时内有更多的空闲时间。a.)我认为WinRT TextBlock没有后台属性,这需要快速编辑模板以添加支持它的方法。b、 )您将需要在DoubleAnimation中使用关键帧而不是ObjectAnimation的彩色动画。可以在午餐后提供示例;)谢谢你的反馈。我更新了它并将其嵌套在网格中。我知道我在这里遗漏了一些基本的东西。看来我必须让你再等一段时间,然后我才能提供一个例子。我可能会建议一个相对简单的方法来实现你的目标。只需偷取一个HyperlinkButton模板,删除除指针外的所有视觉状态,并根据需要对其进行编辑。比你的州更有效(我假设你复制/粘贴了这些