【问题标题】:Windows 8 Metro TextBlock animationWindows 8 Metro TextBlock 动画
【发布时间】:2012-06-02 20:43:22
【问题描述】:

在我的 Metro 应用程序中,我有一个文本块,当 if 语句为真时,我会将其设置为 100% 不透明度然后返回 0% 不透明度。我该怎么做呢?

我环顾四周,但所有的动画教程都让我感到困惑。

【问题讨论】:

    标签: c# windows animation windows-runtime winrt-xaml


    【解决方案1】:

    你可以在 C# 中做这样的事情来从 0 到 1 动画:

    var sb = new Storyboard();
    opacityAnimation = new DoubleAnimation
    {
        From = 0.0,
        To = 1.0,
        Duration = TimeSpan.FromSeconds(1.5)
    };
    Storyboard.SetTarget(opacityAnimation, textBlock);
    Storyboard.SetTargetProperty(opacityAnimation, "Opacity");
    sb.Children.Add(opacityAnimation);
    sb.Begin();
    

    您也可以在 XAML 中定义它:

    <Storyboard
        x:Name="fadeInStoryboard"
        Storyboard.TargetName="myTextBlock"
        Storyboard.TargetProperty="Opacity">
        <DoubleAnimation
            From="0"
            To="1.0"
            Duration="0:0:1.5" />
    </Storyboard>
    

    -- 然后在后面的代码中启动它:

    fadeInStoryboard.Begin();
    

    根据您的场景,使用视觉状态并将情节提要定义为视觉状态转换可能是理想的。

    【讨论】:

      猜你喜欢
      • 2012-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多