VisualStateManager.GoToState()忽略useTransitions

时间:2013-04-10 20:13:28

标签: c# windows-runtime windows-store-apps winrt-xaml

我有一个UserControl,里面有视觉状态。当控件构造时,我想移动到其中一个状态,即“初始”状态(不是默认值 - 有修改)。

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

但是,当控件加载时,会发生明显的转换(HideImageState表示的转换)。

如果我传入useTransitions,为什么会这样?

1 个答案:

答案 0 :(得分:0)

由于您没有提供任何更多信息,因此“通常”可能有助于解决的问题很少。再次,我从髋关节开始拍摄常见问题...

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

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

最后,最重要的是,如果您的可视状态转换位于包含在Viewbox中的用户控件中,那么您的视图状态会因某种原因被忽略。

您还有其他可能的原因可以获得您所看到的结果。然而,由于提供的信息很少,我无法继续猜测。我会假设以上三个原因之一。

祝你好运!