/// <summary> /// Handle the change pivot view /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnPivotChangedPage(object sender, System.Windows.Controls.SelectionChangedEventArgs e) { // TODO: Add event handler implementation here. KreyosUtils.Log("MainScreen::OnPivotChangedPage", "update, do something here.."); Pivot page = (Pivot)sender; PivotItem item = (PivotItem)page.SelectedItem; string pageName = item.Name; EPivotPage pageToLoad = ScreenManager.PageMap[pageName]; //~~~check if screen is already loaded if (m_loadedScreen[(int)pageToLoad] == true) { this.FetchDataForPage(pageToLoad); return; } //~~~set the flag to load m_loadedScreen[(int)pageToLoad] = true; switch (pageToLoad) { case EPivotPage.TodaysActivity: { this.InitTodaysActivity(); item.UpdateLayout(); } break; case EPivotPage.OverallActivity: { this.InitActivityStats(); item.UpdateLayout(); } break; case EPivotPage.SportsMode: { this.InitSportsMode(); item.UpdateLayout(); } break; case EPivotPage.DailyTarget: { this.InitDailyTarget(); item.UpdateLayout(); } break; case EPivotPage.PersonalProfile: { this.InitProfile(); item.UpdateLayout(); } break; case EPivotPage.Settings: { } break; } KreyosUtils.Log("MainScreen::OnPivotChangedPage", "Loaded Page:" + pageName); }