是否应该在停用时调用 WhenActivated?
Is WhenActivated supposed to be called on deactivation?
我已经实现了 ISupportsActivation
并为视图模型和视图添加了对 this.WhenActivated
的调用。在我看来,委托被调用了两次。用于激活和停用。这是设计使然还是我做错了什么?如果这是设计使然,有什么方法可以知道调用是用于激活还是停用?
视图模型是数据绑定到 ViewModelHost
如果这在任何方面都很重要。
我知道有一种情况会发生,那就是如果您使用 RoutedViewHost
或 ViewModelViewHost
。据报告 here and there,当切换视图内容时,old/previous 视图模型被停用-重新激活-(动画)-停用。
然后你在 WhenActivated
上接到了电话。
这显然是一个错误,它是由 TransitioningContentControl
的实现引起的。
我已经实现了 ISupportsActivation
并为视图模型和视图添加了对 this.WhenActivated
的调用。在我看来,委托被调用了两次。用于激活和停用。这是设计使然还是我做错了什么?如果这是设计使然,有什么方法可以知道调用是用于激活还是停用?
视图模型是数据绑定到 ViewModelHost
如果这在任何方面都很重要。
我知道有一种情况会发生,那就是如果您使用 RoutedViewHost
或 ViewModelViewHost
。据报告 here and there,当切换视图内容时,old/previous 视图模型被停用-重新激活-(动画)-停用。
然后你在 WhenActivated
上接到了电话。
这显然是一个错误,它是由 TransitioningContentControl
的实现引起的。