private async void AutoSuggestBox_QuerySubmitted(AutoSuggestBox sender, AutoSuggestBoxQuerySubmittedEventArgs args)
        {
            string city = args.ChosenSuggestion as string ?? args.QueryText;

            if (!string.IsNullOrEmpty(city))
            {
                var data = await m_aqiManager.GetBreezometerAirQualityIndexByLocationAsync(city);

                if (!data?.DataValid ?? true)
                {
                    MapLocationFinderResult result = await MapLocationFinder.FindLocationsAsync(city, new Geopoint(new BasicGeoposition()));

                    var location = result.Locations.FirstOrDefault();

                    if (location != null)
                    {
                        var pos = location.Point.Position;
                        data = await m_aqiManager.GetBreezometerAirQualityIndexAsync(pos.Latitude, pos.Longitude);
                    }

                    if (!data?.DataValid ?? true)
                    {
                        await AppNavServiceManager.ShowPopup("No data found for this city!");
                    }
                }
                else
                {
                    // TODO: ... TODO....
                    await AppNavServiceManager.ShowPopup("Data found!");

                    //MapControl.
                }
            }
        }
Пример #2
0
        /// <summary>
        /// Invoked when the application is launched normally by the end user.  Other entry points
        /// will be used such as when the application is launched to open a specific file.
        /// </summary>
        /// <param name="e">Details about the launch request and process.</param>
        protected override void OnLaunched(LaunchActivatedEventArgs e)
        {
#if DEBUG
            if (System.Diagnostics.Debugger.IsAttached)
            {
                this.DebugSettings.EnableFrameRateCounter = true;
            }
#endif

            if (!ApplicationData.Current.LocalSettings.Containers.ContainsKey("UserInfo"))
            {
                ApplicationData.Current.LocalSettings.CreateContainer("UserInfo", ApplicationDataCreateDisposition.Always);
            }

            NavigationService navService = new NavigationService();

            navService.Configure("ShellVIew", typeof(ShellVIew));

            navService.Configure("LoginPageView", typeof(LoginPageView));

            var   navManager = new AppNavServiceManager(navService);
            Frame rootFrame  = Window.Current.Content as Frame;

            // Do not repeat app initialization when the Window already has content,
            // just ensure that the window is active
            if (rootFrame == null)
            {
                // Create a Frame to act as the navigation context and navigate to the first page
                rootFrame = new Frame();

                rootFrame.NavigationFailed += OnNavigationFailed;

                if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
                {
                    //TODO: Load state from previously suspended application
                }

                // Place the frame in the current Window
                Window.Current.Content = rootFrame;
            }

            if (rootFrame.Content == null)
            {
                // When the navigation stack isn't restored navigate to the first page,
                // configuring the new page by passing required information as a navigation
                // parameter
                if (string.IsNullOrEmpty(AppDataUtil.LoadValue(AppDataUtil.KeyUsername)))
                {
                    rootFrame.Navigate(typeof(LoginPageView), e.Arguments);
                }
                else
                {
                    rootFrame.Navigate(typeof(ShellVIew), e.Arguments);
                }
            }
            // Ensure the current window is active
            Window.Current.Activate();
        }
Пример #3
0
 public LoginPageViewModel()
 {
     m_httpClient        = new HttpClient();
     LoginCommand        = new RelayCommand <object>(LoginAsync);
     SignUpCommand       = new RelayCommand <object>(CreateAccountAsync);
     LoginFailed         = false;
     AccountCreated      = false;
     m_navigationService = AppNavServiceManager.GetNavigationService();
 }
Пример #4
0
 public ShellViewModel()
 {
     m_navigationService = AppNavServiceManager.GetNavigationService();
     OpenPageCommand     = new RelayCommand <PageType>(OpenPageAsync);
     OpenPageAsync(PageType.MapView);
 }