I put my rectangle on the Canvas at the wpf. We gave doubleAnimation using "FrameworkElement.With" to this rectangle. If you try to change the rectangle width after completing the animation, it does not change. Can you guess why?
The animation will change and keep the value with a higher priority, so your normal set value will not work. You can read Microsoft docs for more details about the Dependency Property Value Precedence.
You have two different methods to change your animated property value.
1st. Don't assign the animation
If you create your animation in this way below, you need to remove the
<DoubleAnimation Storyboard.TargetName="element" Storyboard.TargetProperty="Width" From="0" To="100" Duration="0:0:1" />
<DoubleAnimation Storyboard.TargetName="element" Storyboard.TargetProperty="Width" From="0" Duration="0:0:1" />
When you're trying to begin the animation, call like this:
storyboard.Begin(); element.Width = 100;
In this way, your storyboard will begin and then animated your
Width to your last set value.
2nd. Remove the animation from your
Every time your storyboard or animation completed, begin another
null animation to remove the higher priority value of