2012-12-06 58 views
1

我不確定這裏發生了什麼。我遵循Microsoft提供的示例。一切都是在後端完成的,因爲我需要決定用戶是否應該將東西輸入到文本字段中,或者應該將文本字段值顯示爲普通文本。代碼如下:Storyboard.begin()拋出一個InvalidOperationException

  nameInput.Name = "inputName"; 
      nameInput.Text = "Journey Name"; 
      nameInput.KeyUp += onNameInput; 

      ColorAnimation animation = new ColorAnimation(); 
      animation.From = Colors.Blue; 
      animation.To = Colors.White; 
      animation.Duration = new Duration(TimeSpan.FromMilliseconds(100)); 
      animation.RepeatBehavior = RepeatBehavior.Forever; 
      Storyboard.SetTarget(animation, nameInput); 
      Storyboard.SetTargetProperty(animation, new PropertyPath(TextBlock.ForegroundProperty)); 
      storyBoard.Children.Add(animation); 
      journeyStackPanel.Children.Add(nameInput); 
      ClockState state = storyBoard.GetCurrentState(); 
      storyBoard.Begin(); //<---Crashes here 

我下面的

http://msdn.microsoft.com/en-us/library/cc672995(v=vs.95).aspx 

例子。我不確定發生了什麼,不幸的是調試器不會吐出更多的信息。也許我錯過了一步?對不起,我有點模糊,但這是我在這個問題上的所有信息。

任何幫助非常感謝!

回答

2

我能複製這個問題上的最新WP8 SDK,以生成以下錯誤信息:

ColorAnimation不能用於動畫屬性前景由於 不兼容的類型。

我相信這是因爲您試圖將TextBox的Foreground屬性更改爲Color對象,但Foreground實際上是一個Brush對象,因此類型不匹配錯誤。相反,您必須更改Foreground對象的Color屬性。

試試這個:

Storyboard.SetTargetProperty(animation, new PropertyPath("(Foreground).(Color)"));

相關問題