public FuelStationMapsView(FuelStationModel fuelStationSelected)
        {
            InitializeComponent();

            //OBTIENE LA IMAGEN DE LA GASOLINERA SELECCIONADA PARA CONVERTIRLA DE BASE 64
            fuelStationSelected.Picture = new ImageService().SaveImageFromBase64(fuelStationSelected.Picture, fuelStationSelected.ID);
            MapFuelStations.FuelStation = fuelStationSelected;

            //CENTRA EL MAPA EN LA UBICACION GUARDADA DE LA GASOLINERA
            MapFuelStations.MoveToRegion(
                MapSpan.FromCenterAndRadius(
                    new Position(
                        fuelStationSelected.Latitude,
                        fuelStationSelected.Longitude
                        ),
                    Distance.FromMiles(.5)
                    )
                );

            //AGREGA EL PIN EN LA UBICACION GUARDADA DE LA GASOLINERA
            MapFuelStations.Pins.Add(
                new Pin
            {
                Type     = PinType.Place,
                Label    = fuelStationSelected.Name,
                Position = new Position(
                    fuelStationSelected.Latitude,
                    fuelStationSelected.Longitude
                    )
            }
                );
        }
예제 #2
0
        protected override void OnElementChanged(ElementChangedEventArgs <Map> e)
        {
            base.OnElementChanged(e);

            if (e.NewElement != null)
            {
                this.FuelStation = (e.NewElement as MyMap).FuelStation;
            }
        }
예제 #3
0
        public MapWindow(FuelStationModel fuelStation)
        {
            this.InitializeComponent();

            //SETEA LOS VALORES MANDADOS A MOSTRAR EN EL RECUADRO
            WindowPicture.Source = new BitmapImage(new Uri(fuelStation.Picture));
            WindowName.Text      = fuelStation.Name;
            WindowBrand.Text     = fuelStation.Brand;
        }
예제 #4
0
 //METODO PARA GUARDAR UNA GASOLINERA EN SQLITE
 public Task <int> SaveFuelStationAsync(FuelStationModel item)
 {
     if (item.ID != 0)//SI NO EXISTE EL ID CREA UNA NUEVA GASOLINERA
     {
         return(Connection.UpdateAsync(item));
     }
     else//SI LA GASOLINERA YA EXISTE LA ACTUALIZA
     {
         return(Connection.InsertAsync(item));
     }
 }
예제 #5
0
        bool IsFuelStationWindowVisible = false; //SI EL CUADRO ESTA VISIBLE

        //LIMPIA LA INFORMACION QUE TENIA POR DEFECTO PARA CENTRAR EL MAPA Y EL PIN PERSONALIZADO
        protected override void OnElementChanged(ElementChangedEventArgs <Map> e)
        {
            base.OnElementChanged(e);

            if (e.OldElement != null)
            {
                NativeMap.MapElementClick -= OnMapElementClick;
                NativeMap.Children.Clear();
                NativeMap         = null;
                FuelStationWindow = null;
            }

            if (e.NewElement != null)
            {
                this.FuelStation = (e.NewElement as MyMap).FuelStation;

                var formsMap = (MyMap)e.NewElement;
                NativeMap = Control as MapControl;
                NativeMap.Children.Clear();
                NativeMap.MapElementClick += OnMapElementClick;

                //POSICION DEL PIN
                var position = new BasicGeoposition
                {
                    Latitude  = FuelStation.Latitude,
                    Longitude = FuelStation.Longitude
                };
                var point = new Geopoint(position);

                //ATRIBUTOS DE NUESTRO MAPICON, SU FILEPATH, LOCACION, ANCHURA, ETC.
                var mapIcon = new MapIcon();
                mapIcon.Image = RandomAccessStreamReference.CreateFromUri(new Uri("ms-appx:///pin.png"));
                mapIcon.CollisionBehaviorDesired = MapElementCollisionBehavior.RemainVisible;
                mapIcon.Location = point;
                mapIcon.NormalizedAnchorPoint = new Windows.Foundation.Point(0.5, 1.0);

                NativeMap.MapElements.Add(mapIcon);
            }
        }
 //CONSTRUCTOR QUE SE INVOCA PARA ACTUALIZAR UNA GASOLINERA
 public FuelStationDetailPage(FuelStationModel fuelStationSelected)
 {
     InitializeComponent();
     //ENVIA Y OBTIENE LOS BINDINGS DEL VIEW MODEL
     BindingContext = new FuelStationDetailViewModel(fuelStationSelected);
 }
예제 #7
0
 //METODO PARA ELIMINAR UNA GASOLINERA EN SQLITE
 public Task <int> DeleteFuelStationAsync(FuelStationModel item)
 {
     return(Connection.DeleteAsync(item));
 }