我阅读了您对我的问题的回答,并认为 PrismEventAggregator可以帮助您。它旨在促进模块间通信以及其他功能。以下是如何使用它的示例:
获取 EventAggregator 的一个实例。我在这里使用依赖注入:
// Ctor injection
private IEventAggregator _eventAggregator;
public YourViewModel(IEventAggregator eventAggregator)
{
_eventAggregator = eventAggregator;
}
创建要发布的事件(参数用于有效负载)。在您的情况下,选项卡选择:
public class TabSelectedEvent:CompositePresentationEvent<object>{}
选择选项卡时发布事件;
_eventAggregator.GetEvent<TabSelectedEvent>().Publish(null);
最后,订阅事件并响应:
_eventAggregator.GetEvent<TabSelectedEvent>().Subscribe(OnTabSelectedEvent);
现在,你应该可以走了。