代码之家  ›  专栏  ›  技术社区  ›  video.baba

如何:禁用(并重新启用)ToggleButton事件触发器(情节提要-双动画)

  •  0
  • video.baba  · 技术社区  · 7 年前

    在这一点上我真正想做的是禁用这个触发器。我希望按钮不'滑出',因为在下次点击它将下载。所以我想找到一种方法来关闭触发器。当文件下载完所有OK后,我将重新启用触发器,使其处于最初的状态。

    <Style x:Key="ToggleButtonURL" TargetType="{x:Type ToggleButton}">
    

    它设置各种颜色/字体属性和感兴趣的触发器:

                    <Style.Triggers>
                <EventTrigger RoutedEvent="Checked">
                    <BeginStoryboard>
                        <Storyboard>
                            <DoubleAnimation From="-554" To="0" Duration="0:0:0.2" Storyboard.TargetProperty="(Canvas.Left)" AutoReverse="False" />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
                <EventTrigger RoutedEvent="Unchecked">
                    <BeginStoryboard>
                        <Storyboard>
                            <DoubleAnimation From="0" To="-554" Duration="0:0:0.150" Storyboard.TargetProperty="(Canvas.Left)" AutoReverse="False" />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Style.Triggers>
    

    我只是想从代码中找到一种启用/禁用触发器的方法。如果你能帮忙的话,谢谢你。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Raviraj Palvankar    7 年前

    只有在不希望动画运行的条件下,才尝试设置事件参数的e.Handled=true。如果这仍然是击败你的快速进出运动,然后使用PreviewEvent而不是直接事件。