我正在使用 ClassA 中的以下代码订阅和取消订阅 prism 事件。我遇到的问题是在我取消订阅之后,另一个完全不同的类,比如 ClassB,使用不同的处理程序注册相同的事件,仍然调用 ClassA 处理程序。为什么是这样?
我尝试过使用令牌取消订阅以及注册时使用的方法委托,但均无济于事。
SubscriptionToken _subscriptionToken;
//register subscription + handler
var pevent = GetEventAggregator().GetEvent<PriceSubscriptionEvent>();
_subscriptionToken = pevent.Subscribe(r =>
{
DataHandler(r);
return;
}, ThreadOption.BackgroundThread, false, null);
//Unsubscribe
var pevent = GetEventAggregator().GetEvent<PriceSubscriptionEvent>();
pevent.Unsubscribe(_subscriptionToken);