コード例 #1
0
        protected override async void OnStart()
        {
            var dataService = resolver.Get <DataService>();
            await dataService.RebuildAsync();

            MainPage = resolver.Get <MainPage>();
        }
コード例 #2
0
        public App(IComponentProvider provider)
        {
            InitializeComponent();

            // Config Resolver
            resolver = CreateResolver(provider);
            ResolveProvider.Default.UseSmartResolver(resolver);

            // Config Navigator
            navigator = new NavigatorConfig()
                        .UseFormsNavigationProvider()
                        .AddPlugin <NavigationFocusPlugin>()
                        .UseResolver(resolver)
                        .UseIdViewMapper(m => m.AutoRegister(Assembly.GetExecutingAssembly().ExportedTypes))
                        .ToNavigator();
            navigator.Navigated += (_, args) =>
            {
                // for debug
                System.Diagnostics.Debug.WriteLine(
                    $"Navigated: [{args.Context.FromId}]->[{args.Context.ToId}] : stacked=[{navigator.StackedCount}]");
            };

            // Popup Navigator
            var popupNavigator = resolver.Get <IPopupNavigator>();

            popupNavigator.AutoRegister(Assembly.GetExecutingAssembly().ExportedTypes);

            // Show MainWindow
            MainPage = resolver.Get <MainPage>();
        }
コード例 #3
0
        public App(IComponentProvider provider)
        {
            InitializeComponent();

            // Config DataMapper
            SqlMapperConfig.Default.ConfigureTypeHandlers(config =>
            {
                config[typeof(DateTime)] = new DateTimeTypeHandler();
            });

            // Config Rest
            RestConfig.Default.UseJsonSerializer(config =>
            {
                config.Converters.Add(new DateTimeConverter());
                config.Encoder          = JavaScriptEncoder.Create(UnicodeRanges.All);
                config.IgnoreNullValues = true;
            });

            // Config Resolver
            resolver = CreateResolver(provider);
            ResolveProvider.Default.UseSmartResolver(resolver);

            // Config Navigator
            navigator = new NavigatorConfig()
                        .UseFormsNavigationProvider()
                        .UseResolver(resolver)
                        .UseIdViewMapper(m => m.AutoRegister(Assembly.GetExecutingAssembly().ExportedTypes))
                        .ToNavigator();
            navigator.Navigated += (_, args) =>
            {
                // for debug
                System.Diagnostics.Debug.WriteLine(
                    $"Navigated: [{args.Context.FromId}]->[{args.Context.ToId}] : stacked=[{navigator.StackedCount}]");
            };

            // Popup Navigator
            var popupNavigator = resolver.Get <IPopupNavigator>();

            popupNavigator.AutoRegister(Assembly.GetExecutingAssembly().ExportedTypes);

            // Show MainWindow
            MainPage = resolver.Get <MainPage>();
        }
コード例 #4
0
        protected override async void OnStart()
        {
            var dialogs = resolver.Get <IApplicationDialog>();

            // Permission
            while (await Permissions.IsPermissionRequired())
            {
                await Permissions.RequestPermissions();

                if (await Permissions.IsPermissionRequired())
                {
                    await dialogs.Information("Permission required.");
                }
            }

            // Navigate
            await navigator.ForwardAsync(ViewId.Menu);
        }