VisualStateManager.GoToState() ignores useTransitions

本文关键字:ignores useTransitions GoToState VisualStateManager | 更新日期: 2023-09-27 18:08:26

我有一个UserControl,其中有可视状态。当控件构造时,我想移动到"初始"状态之一(不是默认状态-有修改)。

public MyUserControl()
{
    this.InitializeComponent();
    Loaded += MyUserControl_Loaded;
    VisualStateManager.GoToState(this, "HideImageState", false);
}

然而,当控件加载时,有一个明显的过渡发生(HideImageState代表的那个)。

为什么,如果我在传递useTransitions?

VisualStateManager.GoToState() ignores useTransitions

由于您没有提供任何更多信息,因此有一些事情需要"一般地"处理,这可能会有所帮助。再一次,我是随口说说常见的问题……

首先是你的故事板是不准确的。如果你在Blend中创建过渡,那么这是不可能的。但是如果您手工编码,那么目标可能不是您所期望的。

动画也可能正在发生,但被UI中的其他元素遮挡。当您在容器中调整不能拉伸的对象的大小时,有时会发生这种情况。

最后,也是最重要的,如果你的视觉状态转换是在一个被Viewbox包装的用户控件中,那么你的视图状态会因为某种原因被忽略。

你得到你所看到的结果还有其他可能的原因。然而,信息如此之少,我无法继续猜测。我认为是以上三个原因之一。

祝你好运!