2009-07-22 14 views
4

その要素へのバインディングが更新されたときに、テキスト要素にフェードアニメーションを作成したいと考えています。言い換えれば、 というテキストがテキストボックスに追加されると、テキストが を更新してからフェードアウトするにつれて、フェーディング効果が見られるという効果があります。私はこれを達成する方法を知らない。私はFrameworkElement.LoadedのようなをRoutedEventで使用して同様のものを見たことがありますが、バインディングが更新されたときにどのように検出されますか?バインディングの更新時にアニメーションWPFテキストを表示する方法

ありがとうございました。

答えて

8

イベントを発生させるプロパティをバインディングに設定できます。

  1. NotifyOnSourceUpdated:値がバインディングソースに結合するターゲットから転送されたときイベントをSourceUpdated上げ利用可能な2つの特性があります。
  2. NotifyOnTargetUpdated:値がバインディングソースからバインディングターゲットに転送されるときに、TargetUpdatedイベントを発生させます。セットアップの説明から

あなたはNotifyOnTargetUpdatedを使用するように、それが聞こえます。バインディングでこれをtrueに設定すると、ターゲットが更新されるたびにBinding.TargetUpdatedイベントが発生します。その後、EventTriggerでそのイベントを聴いて、テキストをフェードインできます。

+0

残念ながら、FrameworkElement.TargetUpdatedはRoutedEventではないため、EventTriggerでは使用できません。 – HiteshP

+0

ああ - 私はとても近くでした。添付イベント(Binding.TargetUpdated)を使用する必要があります。 – Charlie

+0

ありがとう、それは私のためにそれを解決した:) –

関連する問題