如何:禁用(并重新启用)ToggleButton 事件触发器(故事板 - 双动画)
How to: Disable (and re-enable) a ToggleButton Event Trigger (Storyboard - Double Animation)
我有一个 ToggleButton,单击它会滑出,这样用户就可以 verify/edit 他们复制的 URL(按钮中的文本框)(剪贴板)。然后再次单击 ToggleButton,启动各种 URL 检查并滑回其原始起始位置。这非常有效。 (下面的代码)。
我最想做的就是禁用这个触发器。我希望按钮不是 'slide out',因为在下一次单击时它将下载。所以我试图找到一种方法来禁用触发器。当文件下载一切正常后,我将重新启用触发器到它最初的状态。
togglebutton 样式是这样开始的(在我的 Application.xaml:
<Style x:Key="ToggleButtonURL" TargetType="{x:Type ToggleButton}">
它设置各种 colour/font 属性和感兴趣的触发器:
<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>
我只是想找到一种从代码中触发 enable/disable 的方法。如果您能帮上忙,谢谢。
仅在不希望动画为 运行 的情况下,尝试将事件参数的 e.Handled = true 设置为真。如果快速进出移动仍然困扰着您,请使用 PreviewEvent 而不是直接事件。
我有一个 ToggleButton,单击它会滑出,这样用户就可以 verify/edit 他们复制的 URL(按钮中的文本框)(剪贴板)。然后再次单击 ToggleButton,启动各种 URL 检查并滑回其原始起始位置。这非常有效。 (下面的代码)。
我最想做的就是禁用这个触发器。我希望按钮不是 'slide out',因为在下一次单击时它将下载。所以我试图找到一种方法来禁用触发器。当文件下载一切正常后,我将重新启用触发器到它最初的状态。
togglebutton 样式是这样开始的(在我的 Application.xaml:
<Style x:Key="ToggleButtonURL" TargetType="{x:Type ToggleButton}">
它设置各种 colour/font 属性和感兴趣的触发器:
<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>
我只是想找到一种从代码中触发 enable/disable 的方法。如果您能帮上忙,谢谢。
仅在不希望动画为 运行 的情况下,尝试将事件参数的 e.Handled = true 设置为真。如果快速进出移动仍然困扰着您,请使用 PreviewEvent 而不是直接事件。