Inheritance: System.Windows.Controls.UserControl
示例#1
0
        void SelectStationOnMap(Station selectedStation)
        {
            App.ViewModel.MapCenter = selectedStation.Coordinate;
            this.map.Center         = selectedStation.Coordinate;

            // Show a background behind the selected station
            selectedStationLayer.Children.Clear();
            Image selectedStationBackgroundImage = new Image();

            selectedStationBackgroundImage.Source  = new System.Windows.Media.Imaging.BitmapImage(new Uri("Images/[email protected]", UriKind.Relative));
            selectedStationBackgroundImage.Opacity = 0.8;
            selectedStationBackgroundImage.Stretch = System.Windows.Media.Stretch.None;
            PositionOrigin position = PositionOrigin.Center;

            selectedStationLayer.AddChild(selectedStationBackgroundImage, selectedStation.Coordinate, position);


            GeneralTransform gt          = this.TransformToVisual(this.map as UIElement);
            Point            offset      = gt.Transform(new Point(0, 0));
            double           controlTop  = offset.Y;
            double           controlLeft = offset.X;

            // Show Popup
            if (stationStatus == null)
            {
                stationStatus                 = new StationStatusUserControl(selectedStation);
                buyNowScreen                  = new Popup();
                buyNowScreen.Child            = stationStatus;
                buyNowScreen.IsOpen           = true;
                buyNowScreen.VerticalOffset   = controlTop * (-1) + 30;
                buyNowScreen.HorizontalOffset = (this.LayoutRoot.ActualWidth + controlLeft - stationStatus.Width) / 2;
                buyNowScreen.Closed          += (s1, e1) =>
                {
                    // Add you code here to do something
                    // when the Popup is closed
                };
            }
            else
            {
                stationStatus.DataContext = selectedStation;
                buyNowScreen.IsOpen       = true;
            }
        }
示例#2
0
        void SelectStationOnMap(Station selectedStation)
        {
            App.ViewModel.MapCenter = selectedStation.Coordinate;
              this.map.Center = selectedStation.Coordinate;

              // Show a background behind the selected station
              selectedStationLayer.Children.Clear();
              Image selectedStationBackgroundImage = new Image();
              selectedStationBackgroundImage.Source = new System.Windows.Media.Imaging.BitmapImage(new Uri("Images/[email protected]", UriKind.Relative));
              selectedStationBackgroundImage.Opacity = 0.8;
              selectedStationBackgroundImage.Stretch = System.Windows.Media.Stretch.None;
              PositionOrigin position = PositionOrigin.Center;
              selectedStationLayer.AddChild(selectedStationBackgroundImage, selectedStation.Coordinate, position);

              GeneralTransform gt = this.TransformToVisual(this.map as UIElement);
              Point offset = gt.Transform(new Point(0, 0));
              double controlTop = offset.Y;
              double controlLeft = offset.X;

              // Show Popup
              if (stationStatus == null)
              {
            stationStatus = new StationStatusUserControl(selectedStation);
            buyNowScreen = new Popup();
            buyNowScreen.Child = stationStatus;
            buyNowScreen.IsOpen = true;
            buyNowScreen.VerticalOffset = controlTop * (-1) + 30;
            buyNowScreen.HorizontalOffset = (this.LayoutRoot.ActualWidth + controlLeft - stationStatus.Width) / 2;
            buyNowScreen.Closed += (s1, e1) =>
            {
              // Add you code here to do something
              // when the Popup is closed
            };
              }
              else
              {
            stationStatus.DataContext = selectedStation;
            buyNowScreen.IsOpen = true;
              }
        }