0

我在创建网格淡入效果时遇到了一些问题。

我想要点击后出现一个网格,这可能吗?

谢谢!

4

3 回答 3

2

参加聚会有点晚了,因为我刚刚写的和 Hermit Dave 差不多,但也许它有助于更​​好地理解:

另一种方法是,在 XAML 视图中设置 Storyboard 项目,在我看来,这使它比纯 C# 代码更简洁。为此,您可以在<Grid.Resources>情节提要中声明,如下所示:

<!-- Animates the a control's height. -->
<Grid.Resources>
    <Storyboard x:Name="Animation_Collapse">
        <DoubleAnimation Storyboard.TargetName="Name_Of_Control"
                             Storyboard.TargetProperty="Height"
                             From="200" To="0" Duration="0:0:0.3" />
    </Storyboard>
    <Storyboard x:Name="Animation_Expand">
        <DoubleAnimation Storyboard.TargetName="Name_Of_Control"
                             Storyboard.TargetProperty="Height"
                             From="0" To="200" Duration="0:0:0.3" />
    </Storyboard>
</Grid.Resources>

在这里,您声明了 2 个动画,用于折叠和展开目标控件。您还可以设置很多属性,例如开始和目标值(从、到)和持续时间(这里需要 300 毫秒)。

在您的 .cs 文件中,您只需调用方法即可执行此操作

Animation_Collapse.Begin();
or Animation_Expand.Begin();

例如,只需将其放入您的 button_click 事件处理程序中。故事板位于 System.Windows.Media.Animation 命名空间中。

于 2012-05-10T13:13:23.843 回答
0

您可以使用 Storyboard 并为 Opacity 属性设置动画以产生淡入效果,以下线程涵盖了所需的代码:-

http://social.msdn.microsoft.com/Forums/is/windowsphone7series/thread/a8e05145-364d-412c-8fb5-faf65e80344e

于 2012-05-10T12:44:22.017 回答
0

与保罗相同的答案,但我在一个项目中打开它:P 花了我一段时间来理解故事板给你一个样本

<Storyboard x:Name="fadeText">
    <DoubleAnimation Storyboard.TargetName="tbData"
        Storyboard.TargetProperty="Opacity" From="1.0"
        To="0" Duration="0:0:1" AutoReverse="True" />

    <DoubleAnimation Storyboard.TargetName="btnReset"
        Storyboard.TargetProperty="Opacity" From="1.0"
        To="0" Duration="0:0:1" AutoReverse="True" />
</Storyboard>
于 2012-05-10T12:55:40.590 回答