3

我有一个场景,我想在 WPF 控件从视觉/逻辑树中删除之前对其进行动画处理。控件是自定义的,控件样式(包括动画)将由设计者提供(即,在编写控件代码时我不知道它们的细节)。我想提供路由事件,允许设计人员在对象被删除之前触发动画(例如,用户正在用鼠标拖动控件,当鼠标按钮被释放时,控件可能会慢慢消失而不是突然消失从视觉/逻辑树中删除)。这是否可能仅使用路由事件?是否可以检测动画何时完成而不需要设计者设置一个古怪的依赖属性或在动画结束时触发控件的删除?如果设计者未能设置属性,则使用依赖属性会造成内存泄漏。有没有更好的办法?

4

1 回答 1

2

每个故事板都有一个 Completed 事件,当动画完成时会调用该事件。您应该处理该事件并从该事件中删除控件。这样您就可以在释放鼠标按钮时开始动画。

于 2008-10-27T18:31:20.440 回答