布尔动画锁定属性

Chr*_*col 5 silverlight wpf xaml

如果我有一个设置属性的BooleanAnimation,该属性将被锁定,并且不能通过任何其他方式更改.

例:

<EventTrigger
    SourceName="myButton"
    RoutedEvent="Button.Click">
    <EventTrigger.Actions>
        <BeginStoryboard>
            <Storyboard>
                <BooleanAnimationUsingKeyFrames
                    Storyboard.TargetName="myCheckBox"
                    Storyboard.TargetProperty="IsChecked"
                    FillBehavior="HoldEnd">
                    <DiscreteBooleanKeyFrame
                        KeyTime="00:00:00"
                        Value="False" />
                </BooleanAnimationUsingKeyFrames>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger.Actions>
</EventTrigger>
Run Code Online (Sandbox Code Playgroud)

在此示例中,如果单击该按钮,则复选框设置为false,但是,如果用户再次尝试检查复选框,则复选框将无响应.无法通过代码设置IsChecked属性(单击按钮后).

我可以创建另一个动画来更新CheckBox,但这不是我需要的行为.

我也尝试过FillBehavior ="Stop",但这只会导致动画无法正常工作.

rmo*_*ore 6

CheckBox仍在设置中,但动画仍在运行,这就是为什么它似乎取消选中它.可以通过以下几种方法修复此问题,以便动画不再控制复选框上的属性.在MSDN动画关于当动画结束时会发生什么情况概述会谈.而如何用故事板制作动画后,设置属性越过一些其他的选择.