12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- using Device;
- using EEMSMain.Data;
- using EEMSMain.Views;
- using GeneralData;
- using GlobalData;
- using Prism.Ioc;
- using System.IO;
- using System.Windows;
- using UICommon.CommonContainer;
- namespace EEMSMain;
- /// <summary>
- /// Interaction logic for App.xaml
- /// </summary>
- public partial class App : PrismApplication
- {
- protected override Window CreateShell()
- {
- return Container.Resolve<MainWindow>();
- }
- protected override void RegisterTypes(IContainerRegistry containerRegistry)
- {
- containerRegistry.Register<ICommonContainer, CommonContainer>();
- containerRegistry.RegisterSingleton<ContainerManager>();
- containerRegistry.RegisterSingleton<DeviceCollection>();
- }
- protected override IModuleCatalog CreateModuleCatalog()
- {
- return new DirectoryModuleCatalog() { ModulePath = Path.Combine(Environment.CurrentDirectory, "Modules") };
- }
- }
- public class CommonContainer(IRegionManager regionManager,
- IModuleManager moduleManager, ContainerManager containerManager) : ICommonContainer
- {
- private const string _MainReginName = "MainRegion";
- string ICommonContainer.MainReginName => _MainReginName;
- void ICommonContainer.AddModule(string name)
- {
- moduleManager.LoadModule(name);
- }
- void ICommonContainer.AddNavigation(ContainerInfo containerInfo)
- {
- if (containerInfo.IsHidden)
- return;
- App.Current.Dispatcher.Invoke(() =>
- {
- containerManager.Containers.TryAdd(containerInfo.Index, containerInfo);
- });
- }
- void ICommonContainer.RequestNavigation(string name)
- {
- regionManager.RequestNavigate(_MainReginName, name);
- }
- }
|