Создайте анимацию Blink в WPF в коде позади
Я хочу применитьBlink
анимация кCanvas
так что все объекты, которые я нарисовал на нем, будут мигать вместе с ним.
Я был несколько успешным, используя приведенный ниже код, который меняетOpacity
собственностьCanvas
довольно быстро, чтобы достичь этого эффекта, но я вроде не доволен этим.
Я бы предпочел чистый миг без каких-либоFadeOut/FadeIn
как в моем текущем коде. Как я могу сделать это правильно?
var blinkAnimation = new DoubleAnimation
{
From = 1,
To = 0
};
var blinkStoryboard = new Storyboard
{
Duration = TimeSpan.FromMilliseconds(500),
RepeatBehavior = RepeatBehavior.Forever,
AutoReverse = true
};
Storyboard.SetTarget(blinkAnimation, MyCanvas);
Storyboard.SetTargetProperty(blinkAnimation, new PropertyPath(OpacityProperty));
blinkStoryboard.Children.Add(blinkAnimation);
MyCanvas.BeginStoryboard(blinkStoryboard);
Может быть, я могу сделать это с помощьюVisibilityProperty
но я не мог понять это правильно.