我有一个场景,我希望在从视觉/逻辑树中删除之前设置WPF控件的动画。控件是自定义的,包括动画的控件样式将由设计者提供(即,我不知道在编写控制代码时它们将是什么的细节)。我想提供路由事件,允许设计者在删除对象之前触发动画(例如,用户使用鼠标拖动控件,当释放鼠标按钮时,控件可能会慢慢消失,而不是突然出现从视觉/逻辑树中删除)。这可能只是使用路由事件?是否可以检测动画何时完成而无需设计人员设置奇怪的依赖属性,或者在动画结束时触发删除控件?如果设计器未能设置该属性,则使用依赖项属性会产生内存泄漏。还有更好的方法吗?
答案 0 :(得分:2)
每个故事板都有一个在动画完成时调用的已完成事件。您应该处理该事件并从该事件中删除该控件。这样,您可以在释放鼠标按钮时启动动画。