如何在WinRT XAML中更改其值时为TextBlock设置动画?

我有以下Storyboard

        

和以下TextBlock

  

两者都在SettingsFlyout而不是Page

我希望在TextBlock值更改时启动Storyboard

我正在使用MVVM,所以除非绝对必要,否则请不要使用代码隐藏的东西。

我尝试搜索提示并尝试了BehaviorsTriggersVisualState不同组合,但无处可去。

再次,不确定我们是否100%同意。 但是,仍然是,你可以这样做:

 public class MyViewModel : INotifyPropertyChanged { public string Text { get; set; } public event PropertyChangedEventHandler PropertyChanged; } public void Loaded() { var myBox = new TextBox(); var myAni = new Storyboard(); var MyVvm = new MyViewModel(); // sensible approach myBox.TextChanged += (s, e) => myAni.Begin(); // forced approach MyVvm.PropertyChanged += (s, e) => { if (e.PropertyName.Equals("Text")) myAni.Begin(); }; } 

最后,您是自己的应用程序的开发人员。 不是我。

如果您愿意使用行为,您也可以这样做:

             

我想你可以使用行为来获得“纯粹的”MVVM方法。 它让你100%XAML,这让一些开发人员感到温暖和模糊; 我明白了。 而且,我喜欢行为。 看。 我不想在这里与你争论,只是顶级方法肯定不是“错误的”。

了解有关行为的更多信息: http : //blog.jerrynixon.com/2013/10/everything-i-know-about-behaviors-in.html

祝你好运。