2
我有一个控件,我想向下移动MouseOver
。不幸的是,当我将鼠标悬停时,动画不会运行,但背景会改变颜色。WPF:触发动画 - 沿Y轴向下移动控件
Toolkit:Dialog
是继承ContentControl
的自定义对话框控件。另外,在最后的实现中,我不会使用MouseOver - 目前这只是为了便于测试。
<Style x:Key="blah" TargetType="Toolkit:Dialog">
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Toolkit:CanvasControl.Background" Value="White" />
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.Y)" From="0" To="100" Duration="00:00:01.000" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
</Style>
没有足够的信息。触发器使用了哪种控件/风格?请记住,当你在鼠标上应用动画时,元素会移动,这可能会导致鼠标不再有效。当您将鼠标放在控件的最上面时,会导致一些烦人的抖动。 – dowhilefor 2013-04-10 13:44:56
同意,但我实际上计划使用这种可见性状态变化,但为了便于测试,我将它放在鼠标悬停状态上。它的自定义控件(继承'ContentControl') – Chris 2013-04-10 13:45:52
我不是100%确定,但我认为你必须提供一个空的TranslateTransform到RenderTransform,因为通常没有任何内容。所以你试图给不存在的东西制作动画。只需添加TranslateTransform并查看是否有效。 – dowhilefor 2013-04-10 13:47:25