Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 棱镜统一背景视图_C#_Wpf_Multithreading_Unity Container_Prism - Fatal编程技术网

C# 棱镜统一背景视图

C# 棱镜统一背景视图,c#,wpf,multithreading,unity-container,prism,C#,Wpf,Multithreading,Unity Container,Prism,我正在尝试与unity prism和WPF合作。到目前为止,我所做的是一个在目录中查找模块并按需加载的应用程序。一切都很顺利。我可以使用requestnavigate在我的模块之间导航 但是我面临一个问题,我找不到任何关于这个的好文档。 我有一些模块需要在后台继续执行。例如,我有一个VOIP模块和mediaplayer模块,当我导航到另一个模块时,它们需要继续执行。是否可以使用requestnavigate并对上一个视图/视图模型执行线程操作,直到它成为当前视图?我们可以在单独的线程中运行它

我正在尝试与unity prism和WPF合作。到目前为止,我所做的是一个在目录中查找模块并按需加载的应用程序。一切都很顺利。我可以使用requestnavigate在我的模块之间导航

但是我面临一个问题,我找不到任何关于这个的好文档。
我有一些模块需要在后台继续执行。例如,我有一个VOIP模块和mediaplayer模块,当我导航到另一个模块时,它们需要继续执行。是否可以使用requestnavigate并对上一个视图/视图模型执行线程操作,直到它成为当前视图?

我们可以在单独的线程中运行它

 // Subscribe to Composite Presentation Events
    var eventAggregator = ServiceLocator.Current.GetInstance<IEventAggregator>();
    var navigationCompletedEvent = eventAggregator.GetEvent<NavigationCompletedEvent>();
    navigationCompletedEvent.Subscribe(OnNavigationCompleted, ThreadOption.UIThread);
subscriptionToken = AddedEvent.Subscribe(AddedEventHandler, 
                               ThreadOption.UIThread, false, erFilter);

我没有得到答案:S。eventAggregator允许我从另一个模块调用函数。所以基本上你在解释什么。是在从另一个视图执行导航时订阅事件。但是我想对当前未用于活动视图的viewModel执行线程。我有很多困难。了解在本例中Uithread的目标。我还试图理解分派器在WPF应用程序中的角色,它可能会使我在不同的线程中运行Viewmodel。