12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using EEMSMain.Data;
- using EEMSMain.Views;
- using GlobalData;
- 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>();
- }
- 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.Add(containerInfo.Index, containerInfo);
- var t = containerManager.Containers.OrderBy(t => t.Key);
- //containerManager.Containers.Clear();
- //foreach (var item in t)
- //{
- // containerManager.Containers.Add(item.Key, item.Value);
- //}
- });
- }
- void ICommonContainer.RequestNavigation(string name)
- {
- regionManager.RequestNavigate(_MainReginName, name);
- }
- }
|