xaml - 禁用嵌套 ContentControl 的动画

标签 xaml animation windows-8 transition

我想禁用我的一个元素的 EntrenceThemeAnimation。我有一个网格,将此动画设置为其所有子项(我认为这是页面的默认设置)。是否可以为该网格的子级 ContentControl 禁用此动画?

我尝试了以下方法,但似乎不起作用。

内容

<Grid Style="{StaticResource LayoutRootStyle}">
...
<!-- no animations for this element -->
<ContentControl x:Name="Background" Content="Tabstagram" Margin="0" Grid.Row="1" Style="{StaticResource Background}">
    <ContentControl.Transitions>
        <TransitionCollection/>
    </ContentControl.Transitions>
    <ContentControl.ContentTransitions>
        <TransitionCollection/>
    </ContentControl.ContentTransitions>
</ContentControl>

样式

<Style x:Key="LayoutRootStyle" TargetType="Panel">
    <Setter Property="Background" Value="{StaticResource ApplicationPageBackgroundThemeBrush}"/>
    <Setter Property="ChildrenTransitions">
        <Setter.Value>
            <TransitionCollection>
                <EntranceThemeTransition/>
            </TransitionCollection>
        </Setter.Value>
    </Setter>
</Style>
<Style x:Key="Background" TargetType="ContentControl">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ContentControl">
                <Grid>
                    <Grid.ChildrenTransitions>
                        <TransitionCollection/>
                    </Grid.ChildrenTransitions>
                    <Grid.Transitions>
                        <TransitionCollection/>
                    </Grid.Transitions>
                    <Rectangle IsHitTestVisible="False" StrokeThickness="75" Margin="0" Fill="#FFC1C1C1"/>

最佳答案

我的页面的 LayoutRoot 网格中有以下内容,它正确地禁用了入口主题转换:

<Grid x:Name="LayoutRoot" Style="{StaticResource LayoutRootStyle}">
    <Grid.ChildrenTransitions>
        <TransitionCollection/>
    </Grid.ChildrenTransitions>

但请注意,我正在覆盖使用 LayoutRootStyle 的面板的转换,并且我是在页面而不是资源中执行此操作。

这些动画可能会从启用它们的第一个控件向下流动,无论子控件是否禁用它们。您可以尝试将两个面板放在 UI 层次结构的同一级别(对等而不是嵌套在另一个面板中),看看是否可以解决问题。

关于xaml - 禁用嵌套 ContentControl 的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13922387/

相关文章:

c# - WPF 数据绑定(bind)困惑

c++ - 如何使用 GUI 的 XAML 创建 C++(/CX ?) _DESKTOP_ Windows 8 应用程序?

xaml - UserControl 上的 MVVMLight ViewModelLocator

iphone - map curl 效果

c# - 使用 ReactiveUI 绑定(bind)到组合框中的选定项目

ios - 为什么按下 viewController 时键盘自动弹出

matlab - matlab中的动画情节

c# - 如何获得屏幕的分辨率?对于 WinRT 应用程序?

c# - "j8"的类型初始值设定项引发异常 Visual Studio 2012

c# - Windows 8 - 开始动画?