我有一个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