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