我有一個EventTrigger動畫,它可以在單擊時更改TextBlock的不透明度。
這個觸發器的用途是當用戶點擊它時隱藏我的TextBlock。
它完美的作品。如何顛倒事件觸發器
不過,我想不通我怎麼能扭轉這種EventTrigger - 獲取透明度回 - 。
當我嘗試在我的代碼隱藏中更改它時,觸發器具有優先級,因此它不起作用。
我曾經想過創建一個新的EventTrigger其仍然做相反的事情,我不知道如果我能在我的代碼隱藏調用它..
我的TextBlock是隱藏=上的按鈕真只有當用戶點擊。這是一個錯誤TextBlock。
用戶可以點擊它來隱藏它。
如果用戶再次點擊按鈕,這個文本框現在被不透明度隱藏。
我必須從代碼隱藏中更改這種不透明度我看不出如何用其他方法計算出來。
我的XAML:
<TextBlock x:Name="ErrorTextBlock">
<TextBlock.Triggers>
<EventTrigger RoutedEvent="TextBlock.MouseDown">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="ErrorTextBlock"
Storyboard.TargetProperty="Opacity"
From="1" To="0" Duration="0:0:2"
AutoReverse="False">
編輯:我沒有找到答案,我的問題,但是我找到其他的解決辦法。 問題是訂單 - 動畫第一,代碼 - 第二 - 後面 - 。 所以我只寫我的XAML動畫背後的代碼。 優先事項已經結束,問題得到解決。 =)
什麼是應該觸發得到不透明度? – BradleyDotNET 2015-01-26 18:28:14
在我的代碼隱藏:'ErrorTextBlock.Opacity = 1;' – C0ZEN 2015-01-26 18:34:48
我不是專家,但你不能在XAML中做所有事情。如果這確實是不可行的,你需要的是一個布爾值來指示是否顯示錯誤消息,並且當你改變這個布爾值(在你的點擊事件中)時,在C#設置中啓動一個故事板或取消設置不透明度(基於這個布爾值)。 – Kilazur 2015-01-26 18:44:01