カスタムコントロールの2つの色の間でカスタムコントロールのテキストカラーをアニメーション化する必要があります。これは、カスタムコントロールの2つのBrush
プロパティから読み取られます。私のリソースは次のようになります。今テキストカラーのアニメーション
<SolidColorBrush x:Key="TextBrush">{TemplateBinding Foreground}</SolidColorBrush>
<SolidColorBrush x:Key="AltTextBrush">{TemplateBinding ForegroundAlt}</SolidColorBrush>
、私はColorAnimationを使用してアニメーション化しようとしています:
<ColorAnimation Storyboard.TargetName="MyControlText" Storyboard.TargetProperty="Foreground" To="{StaticResource AltTextBrush}" Duration="00:00:00.3000000" />
ColorAnimationではなく、私が合格しようとしていますBrush
よりも、Color
オブジェクトをしたいようです。ブラシから色を得るためにIValueConverter
と書くことができると思いますが、それを行う前に、簡単な方法で作業をしたいのですか?ここに私の質問があります:
- 2つのブラシリソース間でアニメーションを作成する簡単な方法はありますか、アニメーションの色を抽出する必要はありますか?
- 色を抽出する必要がある場合は、IValueConverterのベストプラクティスですか?
- 最後に、正しい道を向いているのですか、またはこの問題を解決する簡単な方法がありますか?
ありがとうございました。
受入及び+1です。この
のように動作しているようです再度、感謝します。 –
この問題を研究している他の人に:上記のソリューションは、コントロールテンプレート内を除いてどこでも動作します。コントロールテンプレート内のアニメーションにバインディングを設定することはできません。参照:http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/9336022f-badb-4b40-a86c-a50ab1a64ba5/ –