Esempio n. 1
0
 void OnItemSelected(object sender, SelectedItemChangedEventArgs args)
 {
     if (!_isDisappeared && !_isAppearing && args.SelectedItem != null)
     {
         ItemsListView.ScrollTo(args.SelectedItem, ScrollToPosition.MakeVisible, true);
     }
 }
Esempio n. 2
0
        protected override void OnAppearing()
        {
            base.OnAppearing();

            viewModel.LoadLatestCommand.Execute(null);
            if (viewModel.LogItems.Count > 0)
            {
                ItemsListView.ScrollTo(viewModel.LogItems[0], ScrollToPosition.Start, true);
            }
        }
        private void LoadMore_OnClicked(object sender, EventArgs e)
        {
            // VisibilyatorAsync(true,1);

            MoreItemIndicator.IsVisible = true; MoreItemIndicator.IsRunning = true;
            var v = ItemsListView.ItemsSource.Cast <Post>().LastOrDefault();

            ItemsListView.ScrollTo(v, ScrollToPosition.MakeVisible, true);

            // throw new NotImplementedException();
        }
Esempio n. 4
0
        private void StatePicker_SelectedIndexChanged(object sender, EventArgs e)
        {
            var picker = sender as Picker;

            if (!(picker.SelectedItem is StateModel state))
            {
                return;
            }

            var items = ItemsListView.ItemsSource as ObservableCollection <ItemModel>;

            if (items != null && items.Count > 0)
            {
                ItemsListView.ScrollTo(items[0], ScrollToPosition.Start, false);
            }

            ViewModel.ShowItemsCommand.Execute(null);
        }
Esempio n. 5
0
        void Handle_ItemAppearing(object sender, ItemVisibilityEventArgs e)
        {
            //only scroll when the item is more than 1 in the list
            if (viewModel.ScrollToEvent && viewModel.Items.Count > 0)
            {
                viewModel.ScrollToEvent = false;
                //get the index of the event that is later than today
                int todaysEvent = viewModel.Items.IndexOf(viewModel.Items
                                                          .FirstOrDefault(i => DateTime.Compare(DateTime.ParseExact(i.StartDateTime, "yyyy/MM/dd", null), DateTime.Now) > 0));

                //if the index is found, scroll to that item in the list
                if (todaysEvent != -1)
                {
                    ItemsListView.ScrollTo(viewModel.Items[todaysEvent], ScrollToPosition.Center, true);
                    Debug.WriteLine("[ScrollToEvent]Moving to the current event " + viewModel.Items[todaysEvent].EventName + "-" + viewModel.Items[todaysEvent].StartDateTime);
                }
            }
        }
Esempio n. 6
0
        protected override async void OnAppearing()
        {
            _isAppearing = true;

            var task = !_viewModel.Items.Any()
                ? _viewModel.LoadLosungItemsAsync()
                : Task.CompletedTask;

            base.OnAppearing();
            try
            {
                await task;

                ItemsListView.ScrollTo(_viewModel.SelectedItem ?? _viewModel.Today, ScrollToPosition.MakeVisible, false);
            }
            finally
            {
                _isAppearing = _isDisappeared = false;
            }
        }
Esempio n. 7
0
 private void Picker_SelectedIndexChanged(object sender, EventArgs e)
 {
     ItemsListView.ScrollTo(0);
 }