当它的可见性从0的宽度增加到其自动宽度时,我正在尝试给StackPanel设置动画,这是我目前的状态:
<Trigger Property="Visibility" Value="Visible">
<Setter Property="Width" Value="0"></Setter>
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Width" Duration="0:0:1">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<System:Double>NaN</System:Double>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
有人可以解释我如何实现此动画吗?我尝试执行此操作可能无法实现吗?
谢谢,亚历克斯。
这是我一起提出的一个快速样机项目。
[在Window的Loaded事件中,我只是将堆栈面板的可见性设置为Visible,并且它会扩展以适应其容器的宽度,从左到右...希望能满足您的需求。
所以,这是一个很老的问题,但是我认为这是一个足够普遍的情况,您需要将Width
或Height
从0
动画化为Auto
(或类似值)以证明另外的答案是正确的。在这里,我将不着重于Alex的确切要求,以强调我提出的解决方案的一般性质。