文本更改时启动故事板

时间:2009-10-14 23:54:15

标签: silverlight silverlight-3.0 silverlight-2.0

我有一个TextBlock绑定到我的视图模型上的属性。我有一个StoryBoard,使用Opacity属性淡入淡出文本。我正在使用此文本在执行操作(成功,错误等)后向用户提供反馈。当属性从我的视图模型更改时,如何启动StoryBoard?有没有更好的方法来做这种效果?

1 个答案:

答案 0 :(得分:4)

抱歉,我不想告诉你 - 但你错了。

不要在故事板,Opacity和Visiblity属性中思考。 总是想到“视觉状态”。

您刚刚描述的内容(在TextBlock中淡入以响应某些业务逻辑更改)是使用VisualStateManager状态的完美案例。

基本上你最终会有一个“Is”状态组,当条件满足时(状态已经达到某个状态)会有一个状态,而另一个状态组则不满足。

强烈建议您花30分钟观看这些优秀的Blend VSM教程视频。 http://expression.microsoft.com/en-ca/cc643423.aspx 特别是“Add States to a Control”下的7分钟视频。

Erwin van dar valk刚刚发表了一篇很棒的文章,演示了如何从MVVM改变VSM状态,这与你的情况有关。 http://blogs.msdn.com/erwinvandervalk/archive/2009/10/12/how-to-work-with-animations-in-silverlight-in-the-mvvm-pattern.aspx

相关问题