2011-04-14 6 views
5

ストーリーボードのステータスを確認するにはどうすればよいですか?ストーリーボードのステータスを確認する方法は?

例:

if (storyboard.Completed += true) // ??? 
{ 
} 

(このコードは明白な理由のために、ない作業を行います。)

+1

インラインコードのバックティック。コードブロックの新しい段落と4つのインデント(コードブロックを選択し、エディタの "{}"ボタンを押してください)。ハッピーになる。 –

+0

ありがとう!私はいつもコードエディタが私を憎んだ理由を疑問に思っていました... – JavaAndCSharp

+0

あなたの質問に答えてくれるかどうかチェックしたいだけです。 –

答えて

4

ちょうどCompletedイベントをフックし、そこでコードが実行されると、ストーリーボードが完成します。参照:http://msdn.microsoft.com/en-us/library/system.windows.media.animation.timeline.completed(VS.95).aspx#Y565

+0

どうすればいいですか? (例えば、storyboard.Completed + = Completed;) – JavaAndCSharp

+0

そうです。 http://samples.msdn.microsoft.com/Silverlight/SampleBrowser/index.htm#/?sref=change_targetname_2(サンプルソースコードの表示ボタンをクリックし、その上に表示されるC#ボタンをクリックしてサンプルをチェックしてください。ページ上部)。 –

4

どのようにブール変数(例えば完了する)の作成について、完了したコールバックでtrueに設定します?

1
if(storyboard.GetCurrentState() == ClockState.Active) 
{ 
    // do something 
} 
0

これは動作しません。

  Storyboard storyBoardPulse = this.FindResource("StoryboardMainIconPulse") as Storyboard; 
 
      Storyboard.SetTarget(storyBoardPulse, this.imageIcon); 
 

 
      if (storyBoardPulse.GetCurrentState() != ClockState.Active) 
 
      { 
 
       storyBoardPulse.Begin(); 
 
      }

バックこのエラーを取得:

private Boolean pulseOn; 
 

 
private void operationsOfMaintenance_OperationExpired(Boolean state) 
 
     { 
 
      Storyboard storyBoardPulse = this.FindResource("StoryboardMainIconPulse") as Storyboard; 
 
      Storyboard.SetTarget(storyBoardPulse, this.imageIcon); 
 

 
      if (!state) 
 
      { 
 
       storyBoardPulse.Stop(); 
 
       storyBoardPulse.Remove(); 
 
       pulseOn = false; 
 
      } 
 
      else 
 
      { 
 
       if(!pulseOn)storyBoardPulse.Begin(); 
 
       pulseOn = true; 
 
      } 
 
     }
:私は非常に流血の回避策を作る

System.InvalidOperationException was unhandled by user code

HResult=-2146233079

Message=Impossible to execute the action. the Storyboard specify not applied to this object for interactive control.

青を

最初の例でエラーが発生する理由を知っていますか?

ありがとう

関連する問題