gpt4 book ai didi

c# - ThemeTransitions 的完成处理程序

转载 作者:行者123 更新时间:2023-12-04 17:51:28 24 4
gpt4 key购买 nike

默认的 UWP ListView 样式在其 ItemContainerTransitions TransitionCollection 中包含一些主题转换。有什么方法可以知道给定主题过渡的过渡动画何时完成?

例如,我有一个 ListView 和一个将项目添加到列表的随附按钮。我想在添加项目时禁用按钮,因为如果另一个项目在进行中排队时动画会被取消。我可以根据按钮 Tapped 事件轻松禁用按钮,但我需要知道何时可以重新启用它。

看来我的选择是:

1) 等待 Task.Delay 等待 AddDeleteThemeTransition 花费的时间。看起来很老套。

2) 尝试使用 Storyboard 动画模仿 AddDeleteThemeTransition。我有这个工作,但似乎有点矫枉过正。也可以使用合成,但在我看来比 Storyboard动画更过分。

顺便说一句,我还没有看到任何人实现他们自己的 Transition(即继承自 Transition 类)。它在这里可能不相关,但它是否可行?

最佳答案

如果您有受支持的 SDK,您的第二个想法是使用组合实际上是最好的。您想要使用的是在您的元素或 ItemsPanel 上定义的隐式动画,因为没有正确的方法可以判断动画何时结束。

ElementCompositionPreview.SetImplicitShowAnimationElementCompositionPreview.SetImplicitHideAnimation 支持您设置隐式合成动画以添加/移除到可视化树 - 并将避免踩踏问题动画相互抵消,比使用 Storyboard更有效。

您也无法实现自己的“过渡”,因为该类本身绝对不会公开公开任何内容,但现在有了合成动画就没有必要了 - 合成功能更强大。

关于c# - ThemeTransitions 的完成处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44389947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com