/// <summary> /// The methods provided in this section are simply used to allow /// NavigationHelper to respond to the page's navigation methods. /// <para> /// Page specific logic should be placed in event handlers for the /// <see cref="NavigationHelper.LoadState"/> /// and <see cref="NavigationHelper.SaveState"/>. /// The navigation parameter is available in the LoadState method /// in addition to page state preserved during an earlier session. /// </para> /// </summary> /// <param name="e">Provides data for navigation methods and event /// handlers that cannot cancel the navigation request.</param> protected override void OnNavigatedTo(NavigationEventArgs e) { if (AppList.getMyAppList().myappList.Count > 0) btnMyApps.Visibility = Visibility.Visible; else btnMyApps.Visibility = Visibility.Collapsed; app = AppInstance.app; var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings; if (localSettings.Values.ContainsKey(app.Name)) appInstalled=(bool)(localSettings.Values[app.Name]); if (appInstalled) btnAppInstall.Content = "LAUNCH"; else btnAppInstall.Content = "INSTALL"; webAppReviews.NavigateToString(getHtmlComment()); txtAppName.Text = app.Name; txtAppAuthor.Text = app.Author; if (app.Description.Length > 50) { txtShowMore = false; txtAppDetails.Text = app.Description.Substring(0, 50) + "..."; detailsShowMore.Content = "more"; } else { txtAppDetails.Text = app.Description; detailsShowMore.Visibility = Visibility.Collapsed; } txtAddInfo1.Text=("Author: \nAuthor Email: \nCategory: \nType: "); txtAddInfo2.Text=(app.Author + "\n" + app.AuthorEmail + "\n" + app.Category + "\n" + app.Type); List<Image> images = new List<Image>(); foreach(string screenshot in app.Screenshots) { Image image = new Image(); image.Source = new BitmapImage(new Uri(screenshot)); images.Add(image); } FullScreenshots.ItemsSource = images; imgAppIcon.Source = new BitmapImage(new Uri(app.AppIcon)); GridScreenshots.ItemsSource = app.Screenshots; this.navigationHelper.OnNavigatedTo(e); }
/// <summary> /// Executed when the app is long tapped. Context menu appears now. /// </summary> /// <param name="sender">Object Sender is a parameter called Sender that contains a reference to the control/object that raised the event.</param> /// <param name="e">RoutedEventArgs e is a parameter called e that contains the event data, see the RoutedEventArgs MSDN page for more information.</param> private void StackPanel_Holding(object sender, HoldingRoutedEventArgs e) { FrameworkElement senderElement = sender as FrameworkElement; StackPanel stackPanel = sender as StackPanel; TextBlock txt = (TextBlock)stackPanel.Children.ElementAt(1); foreach (Apps app in AppList.getAppList().appList) { if (app.Name.Equals(txt.Text)) { appHolding = app; break; } } var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings; FlyoutBase flyoutBase = FlyoutBase.GetAttachedFlyout(senderElement); flyoutBase.ShowAt(senderElement); }