2011-12-07 4 views
0

シェイプを持つサードパーティを使用していますが、そのうちの1つが無効である場合は、それを明るくしたいと思います。現時点では私がそれを動作させる唯一の方法はDropShadowEffectです。ダイナミックエフェクトをUIElementに設定するエフェクト

myShape.Effect = new DropShadowEffect { BlurRadius = 120, Color = Color.FromArgb(220, 255, 0, 0), Direction = 0, ShadowDepth = 0 }; 

残念ながら、これはアニメーション化されていません。私はVisualStateでいくつかのアニメーションを行うことができることを知っていますが、UIElement.Effectで使用する方法はわかりません。

シェイプが描画されているキャンバスをコントロールしていない場合、サードパーティーなのでシェイプ自体を制御できない場合、Silverlightでこのような効果をどのようにすることができますか?

答えて

0

私は今、アニメーションを持つことができますが、それは私が以前のような効果を設定し、90%

で動作します。

myShape.Effect =新しいDropShadowEffect {BlurRadius = 500、色= Color.FromArgb(255、255 、0,0)、Direction = 0、ShadowDepth = 10、Opacity = 100}。

は、それから私は、ストーリーボードを作成し、それを追加します。

var shadowExpand = new DoubleAnimation(); 
shadowExpand.From = 1; 
shadowExpand.To = 0; 
shadowExpand.Duration = new Duration(TimeSpan.FromMilliseconds(2000)); 
shadowExpand.RepeatBehavior = RepeatBehavior.Forever; 
shadowExpand.AutoReverse = true; 
Storyboard.SetTarget(shadowExpand, addFlowShape); 
Storyboard.SetTargetProperty(shadowExpand, new PropertyPath("(UIElement.Effect).(DropShadowEffect.Opacity)")); 
var stb = new Storyboard(); 
stb.Children.Add(shadowExpand); 

問題は、私はそれが1999msのために何もしないし、その後徐々に行くことなく0に本当に速い100からフリック見るということです。

体はどんな体でもより滑らかになりますか?

私は不透明度のために1でなければならない。あなたに感謝しました。

関連する問題