Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. public class App : PrismApplication
  2. {
  3. private const string _navigationServiceName = "UnityPageNavigationService";
  4.  
  5. public App(IPlatformInitializer initializer = null) : base(initializer)
  6. {
  7. }
  8.  
  9. protected override void ConfigureContainer()
  10. {
  11. Container.AddNewExtension<DependencyServiceExtension>();
  12.  
  13. Container.RegisterInstance(Logger);
  14. Container.RegisterInstance(ModuleCatalog);
  15. Container.RegisterType<IApplicationProvider, ApplicationProvider>(new ContainerControlledLifetimeManager());
  16. Container.RegisterType<INavigationService, UnityCustomPageNavigationService>(_navigationServiceName);
  17. Container.RegisterType<IModuleManager, ModuleManager>(new ContainerControlledLifetimeManager());
  18. Container.RegisterType<IModuleInitializer, UnityModuleInitializer>(new ContainerControlledLifetimeManager());
  19. Container.RegisterType<IEventAggregator, EventAggregator>(new ContainerControlledLifetimeManager());
  20. Container.RegisterType<IDependencyService, Prism.Services.DependencyService>(new ContainerControlledLifetimeManager());
  21. Container.RegisterType<IPageDialogService, PageDialogService>(new ContainerControlledLifetimeManager());
  22. }
  23.  
  24. protected async override void OnInitialized()
  25. {
  26. await NavigationService.NavigateAsync("RootPage/Content2");
  27. }
  28.  
  29. protected override void RegisterTypes()
  30. {
  31. Container.RegisterTypeForNavigation<Content1>();
  32. Container.RegisterTypeForNavigation<Content2>();
  33. Container.RegisterTypeForNavigation<Content3>();
  34. Container.RegisterTypeForNavigation<SubContent1>();
  35. switch (new Random().Next() % 3)
  36. {
  37. case 0:
  38. Container.RegisterTypeForNavigation<MyTabbedMasterDetailPage>("RootPage");
  39. break;
  40. case 1:
  41. Container.RegisterTypeForNavigation<MyTabbedPage>("RootPage");
  42. break;
  43. default:
  44. Container.RegisterTypeForNavigation<MyCarouselPage>("RootPage");
  45. break;
  46. }
  47. }
  48.  
  49. public class MyTabbedMasterDetailPage : TabbedMasterDetailPage
  50. {
  51. public MyTabbedMasterDetailPage() : base()
  52. {
  53. this.Children.Add(new Content1());
  54. this.Children.Add(new Content2());
  55. this.Children.Add(new Content3());
  56. }
  57. }
  58.  
  59. public class MyTabbedPage : TabbedPage
  60. {
  61. public MyTabbedPage() : base()
  62. {
  63. this.Children.Add(new Content1());
  64. this.Children.Add(new Content2());
  65. this.Children.Add(new Content3());
  66. }
  67. }
  68.  
  69. public class MyCarouselPage : CarouselPage
  70. {
  71. public MyCarouselPage() : base()
  72. {
  73. this.Children.Add(new Content1());
  74. this.Children.Add(new Content2());
  75. this.Children.Add(new Content3());
  76. }
  77. }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement