You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用WinUI 3中TeachingTip的打开和关闭动画?

禁用TeachingTip的开合动画

TeachingTip的开合动画并非继承自ContentControl,而是它自身通过**视觉状态(VisualState)**定义的,默认样式里这些动画被封装在VisualStateGroups节点中,可能你没定位到对应内容。

解决方法如下:

  1. 提取TeachingTip的默认样式
    在Visual Studio的「文档大纲」中找到目标TeachingTip,右键选择「编辑模板」→「编辑副本」,生成完整的默认样式代码。

  2. 修改视觉状态动画
    在生成的样式里找到VisualStateManager.VisualStateGroups节点,定位到Opening和Closing两个视觉状态,删除其中的<Storyboard>内容,或者将动画的Duration设为0:0:0,示例如下:

<!-- 修改前的Opening状态 -->
<VisualState x:Name="Opening">
  <Storyboard>
    <DoubleAnimation Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:0.2"/>
    <DoubleAnimation Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleX)" From="0.9" To="1" Duration="0:0:0.2"/>
    <DoubleAnimation Storyboard.TargetName="LayoutRoot" Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleY)" From="0.9" To="1" Duration="0:0:0.2"/>
  </Storyboard>
</VisualState>

<!-- 修改后的Opening状态(无动画) -->
<VisualState x:Name="Opening"/>

对Closing状态做同样处理,就能让TeachingTip的显示和隐藏不再有动画效果。

补充说明:TeachingTip确实继承自ContentControl,但ContentControl本身没有弹出/收起这类动画,它的开合动画是控件自身实现的专属视觉状态动画。

内容的提问来源于stack exchange,提问作者Bevara Satyasairam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 11:36:03