WpDetailPage.xaml.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. using System;
  2. using Windows.UI.Core;
  3. using Windows.UI.ViewManagement;
  4. using Windows.UI.Xaml.Controls;
  5. using Windows.UI.Xaml.Input;
  6. using Windows.UI.Xaml.Media;
  7. using Windows.UI.Xaml.Navigation;
  8. using Breda_Tour.Data;
  9. using Breda_Tour.RouteSelectScreen;
  10. namespace Breda_Tour.MapScreen
  11. {
  12. public sealed partial class WpDetailPage : Page
  13. {
  14. private Waypoint wp;
  15. private Route route;
  16. public double Width { get; }
  17. public WpDetailPage()
  18. {
  19. this.InitializeComponent();
  20. Width = ApplicationView.GetForCurrentView().VisibleBounds.Width;
  21. }
  22. protected override void OnNavigatedTo(NavigationEventArgs e)
  23. {
  24. Tuple<Waypoint, Route> t = (Tuple < Waypoint, Route>) e.Parameter;
  25. wp = t.Item1;
  26. route = t.Item2;
  27. this.DataContext = wp;
  28. if (wp.FromPreview)
  29. {
  30. SystemNavigationManager.GetForCurrentView().BackRequested += RouteExample_BackRequested;
  31. }
  32. else
  33. {
  34. SystemNavigationManager.GetForCurrentView().BackRequested += MainPage_BackRequested;
  35. }
  36. SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible;
  37. wp.FromPreview = false;
  38. }
  39. private void RouteExample_BackRequested(object sender, BackRequestedEventArgs e)
  40. {
  41. e.Handled = true;
  42. SystemNavigationManager.GetForCurrentView().BackRequested -= RouteExample_BackRequested;
  43. MainPage.RootFrame.Navigate(typeof(RouteExample), route);
  44. }
  45. private void MainPage_BackRequested(object sender, BackRequestedEventArgs e)
  46. {
  47. e.Handled = true;
  48. SystemNavigationManager.GetForCurrentView().BackRequested -= MainPage_BackRequested;
  49. MainPage.RootFrame.Navigate(typeof(MapPage));
  50. }
  51. private void Image_PointerPressed(object sender, TappedRoutedEventArgs e)
  52. {
  53. Image i = (Image)sender;
  54. MainPage.RootFrame.Navigate(typeof(ImageViewPage), new Tuple<ImageSource, Waypoint>(i.Source, wp));
  55. }
  56. private void Image_Tapped(object sender, TappedRoutedEventArgs e)
  57. {
  58. }
  59. }
  60. }