【问题标题】:What's the easiest way to write a boolean animation?编写布尔动画的最简单方法是什么?
【发布时间】:2011-01-14 00:05:19
【问题描述】:

我有以下sn-p:

<StackPanel>
    <Popup>
        <TextBox ToolTip="Edit current date"/>
    </Popup>
    <Label "Current Date"/>
</StackPanel>

我希望在单击 StackPanel 时显示弹出窗口,并在它(弹出窗口)失去焦点时隐藏。

我想知道用 xaml 编写此代码的最短方法是什么。

【问题讨论】:

    标签: xaml popup storyboard


    【解决方案1】:

    要对动画执行此操作,请使用 BooleanAnimationUsingKeyFrames。该示例显示了如何为 IsEnabled 属性设置动画,但与 Popup.IsOpen 也同样有效。 (您需要向下滚动才能查看 XAML 示例。)注意 FillBehavior,以便在动画结束时 Popup 不会动画回关闭(当然,除非这是您想要的!)。

    【讨论】:

    • 难道没有像 BooleanAnimation 或 BooleanAnimationStoryBoard 这样更短的方法吗,我不想用不必要的关键帧之类的东西弄脏代码......
    • BooleanAnimationUsingKeyFrames 是框架中唯一内置的布尔动画。我相信您可以从 BooleanAnimationBase 派生自己的类(通过覆盖 GetCurrentValueCore),但还没有尝试过。我怀疑他们省略了“简单”布尔动画,因为动画通常仅在您想要随时间进行更改时使用,并且单个布尔更改没有时间维度。
    • 我不知道如何开始,我很想拥有一个 BooleanAnimationBase 的子类来完成所有工作(即它有一个 From & To 属性并包含所有内容,我会甚至寻找 BooleanStoryBoard 等。任何想法、链接、博客、代码或任何其他方法将不胜感激。谢谢 itowlson
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    相关资源
    最近更新 更多