コード例 #1
0
 private void _carouselView_PositionSelected(CardsView view, ItemAppearingEventArgs args)
 {
     if (args.Type == PanCardView.Enums.InteractionType.User)
     {
         SetPosition(_carouselView.SelectedIndex);
     }
 }
コード例 #2
0
        private async void CardsView_OnItemAppearing(CardsView view, ItemAppearingEventArgs args)
        {
            _viewModel.IsZoomed = false;
            _viewModel.IsBusy   = true;

            if (_viewModel.CanLoadMore && _viewModel.CurrentIndex < 1)
            {
                await LoadNewer();
            }

            if (_viewModel.CanLoadMore && _viewModel.CurrentIndex > _viewModel.VideoItems.Count - 2)
            {
                await LoadOlder();
            }

            _viewModel.CurrentVideoViewModel = _viewModel.VideoItems[_viewModel.CurrentIndex];
            _viewModel.CurrentVideoId        = _viewModel.CurrentVideoViewModel.VideoId;
            await UpdateEditInfo();

            if (_viewModel.CurrentVideoViewModel.VideoTime != null && _viewModel.Progeny.BirthDay.HasValue)
            {
                DateTime picTimeBirthday = new DateTime(_viewModel.Progeny.BirthDay.Value.Ticks, DateTimeKind.Unspecified);

                PictureTime picTime = new PictureTime(picTimeBirthday, _viewModel.CurrentVideoViewModel.VideoTime, TimeZoneInfo.FindSystemTimeZoneById(_viewModel.Progeny.TimeZone));
                _viewModel.PicTimeValid = true;
                _viewModel.PicYears     = picTime.CalcYears();
                _viewModel.PicMonths    = picTime.CalcMonths();
                _viewModel.PicWeeks     = picTime.CalcWeeks();
                _viewModel.PicDays      = picTime.CalcDays();
                _viewModel.PicHours     = picTime.CalcHours();
                _viewModel.PicMinutes   = picTime.CalcMinutes();
            }

            LocationMap.Pins.Clear();
            if (!string.IsNullOrEmpty(_viewModel.CurrentVideoViewModel.Latitude) &&
                !string.IsNullOrEmpty(_viewModel.CurrentVideoViewModel.Longtitude))
            {
                LocationMap.IsVisible = true;
                bool latParsed = double.TryParse(_viewModel.CurrentVideoViewModel.Latitude, NumberStyles.Any, CultureInfo.GetCultureInfo("en-US"), out double lat);
                bool lonParsed = double.TryParse(_viewModel.CurrentVideoViewModel.Longtitude, NumberStyles.Any, CultureInfo.GetCultureInfo("en-US"), out double lon);
                if (latParsed && lonParsed)
                {
                    Position position = new Position(lat, lon);
                    Pin      pin      = new Pin();
                    pin.Position = position;
                    pin.Label    = _viewModel.CurrentVideoViewModel.Location;
                    pin.Type     = PinType.SavedPin;
                    LocationMap.Pins.Add(pin);
                    LocationMap.MoveToRegion(MapSpan.FromCenterAndRadius(position, Distance.FromKilometers(2)));
                }
            }
            else
            {
                LocationMap.IsVisible = false;
            }
            _viewModel.IsBusy = false;
        }
コード例 #3
0
ファイル: CardViewBehavior.cs プロジェクト: dorisoy/Wesley
 private void Rotator_ItemAppearing(CardsView view, ItemAppearingEventArgs e)
 {
     try
     {
         if (view is PanCardView.CarouselView rotator)
         {
             this.Animation(rotator, e.Index);
         }
     }
     catch (Exception ex)
     {
         System.Diagnostics.Debug.WriteLine($"Rotator_ItemAppearing -> {ex.Message}");
     }
 }
 private void OnItemAppearing(object sender, ItemAppearingEventArgs e)
 {
     (e.ItemData as BookInfo).PropertyChanged += OnPropertyChanged;
 }