private void OnItemAppearing(object sender, ItemVisibilityEventArgs e) { if (ItemAppearingCommand != null) { ItemAppearingCommand?.Execute(e.Item); } }
//public async void TapSearchImage(object sender, EventArgs args) //{ // lblNoRecord.IsVisible = false; // if (loading.IsRunning == false) // { // if (!App.CheckInternetConnection()) // { // await DisplayAlert(AppResources.LNetworkError, AppResources.LNoInternetConnection, AppResources.LOk); // } // else // { // if (FilterMahrashtraVisitGoesInternationalList.Text == "" || FilterMahrashtraVisitGoesInternationalList.Text == null) // { SearchFilterText = ""; } // else // { // SearchFilterText = FilterMahrashtraVisitGoesInternationalList.Text; // } // index = 0; // loadingIndicator.IsVisible = true; // loading.IsRunning = true; // loading.IsVisible = true; // // GalleryList.IsVisible = false; u // CountryList.Clear(); // CallWebServiceForForiegnVisits(index); // } // } //} private async void GalleryList_ItemAppearing1(object sender, ItemVisibilityEventArgs e) { try { if (totalItems != 0) { MaxIndex = Math.Ceiling(((decimal)totalListItems) / 5); if (index < MaxIndex) { if (CountryList != null && e.Item != null && e.Item == CountryList[CountryList.Count - 1]) { index++; if (index != MaxIndex) { GalleryList.IsRefreshing = false; loadingIndicator.IsVisible = true; loading.IsVisible = true; loading.IsRunning = true; await CallWebServiceForForiegnVisits(index); } } } } } catch (Exception ex) { if (App.CurrentPage() == "makeinmaharashtrainternational") { await DisplayAlert(AppResources.LError, AppResources.LWebserverNotResponding, AppResources.LOk); } } }
private async void NewsGalleryLists_ItemAppearing1(object sender, ItemVisibilityEventArgs e) { try { if (totalItems != 0) { MaxIndex = Math.Ceiling(((decimal)totalItems) / 5); if (index < MaxIndex) { if (NewsList != null && e.Item != null && e.Item == NewsList[NewsList.Count - 1]) { index++; if (index != MaxIndex) { NewsGalleryLists.IsRefreshing = false; loadingIndicator.IsVisible = true; loading.IsVisible = true; loading.IsRunning = true; await CallWebServiceForNewsGalleryList(index); } } } } } catch (Exception ex) { if (App.CurrentPage() == "newsgallerylist") { if (ex.Message.Contains("Network")) { await DisplayAlert(AppResources.LError, AppResources.LSomethingWentWrong, AppResources.LOk); } } } }
private void lw_ItemAppearing(object sender, ItemVisibilityEventArgs e) { Dataset_F102 item = e.Item as Dataset_F102; currentItemIndex = GetF102_data_List.IndexOf(item); if (currentItemIndex > prevItemIndex) { scroll_UP = true; } else { scroll_UP = false; } if (currentItemIndex > 20 & scroll_UP == true) { cv_f102_dynamic.IsVisible = false; } else if (currentItemIndex == 0) { cv_f102_dynamic.IsVisible = true; } /*DisplayAlert("Check", * Math.Round(Math.Pow(currentItemIndex, 1.8), 0).ToString() , "OK" * );*/ prevItemIndex = currentItemIndex; }
// Infinite ListView Extension, borrowed from http://www.codenutz.com/lac09-xamarin-forms-infinite-scrolling-listview/ async void ItemAppearing(object sender, ItemVisibilityEventArgs e) { var items = _recipePageItems; var item = e.Item; if (items != null && e.Item == items[items.Count - 1]) { busy = Busy.Flip(busy); var response = await App.SpoonManager.GetRecipesByQueryAsync(recipeSearch.Text, items.Count); busy = Busy.Flip(busy); if (response.totalResults > 0) { foreach (RecipePreview recipe in response.results) { recipe.image = "https://spoonacular.com/recipeImages/" + recipe.image; _recipePageItems.Add(recipe); } } else if (!_endOfResults) { var label = new Label(); label.Text = "No more recipes, please try another search."; recipeStack.Children.Add(label); } } }
async void MoviesList_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (_viewModel.IsSearchingMode == false && e.Item == _viewModel.MovieList[_viewModel.MovieList.Count - 1]) { await _viewModel.LoadMoreMovies(); } }
private async void OnListItemDisappearing(object sender, ItemVisibilityEventArgs e) { // Experimental - Hiding and showing the FAB correctly is dependent on the objects in the list being unique if (!(sender is Xamarin.Forms.ListView list)) { return; } await Task.Run(() => { if (list.ItemsSource is IList items) { var index = items.IndexOf(e.Item); if (index < appearingListItemIndex && index >= 0) { appearingListItemIndex = index; Device.BeginInvokeOnMainThread(async() => { fab.Hide(); await Task.Delay(500); fab.Show(); }); } else { appearingListItemIndex = index; } } }); }
private async void OnItemAppearing(object sender, ItemVisibilityEventArgs e) { var listView = (ListView)sender; if (!(listView.BindingContext is IPageable pageable)) { throw new InvalidOperationException($"{nameof(BindingContext)} must be of type {nameof(IPageable)}"); } if (!(listView.ItemsSource is IList itemsSource)) { // performance hit, just make the thing a list to begin with itemsSource = listView.ItemsSource?.Cast <object>().ToList() ?? throw new InvalidOperationException($"{nameof(ListView.ItemsSource)} cannot be converted to {nameof(IList<object>)}"); } if (pageable.IsLoadingPage || itemsSource.Count == 0) { return; } //hit bottom! pageable.IsLoadingPage = true; var itemIndex = itemsSource.IndexOf(e.Item); if (itemIndex >= itemsSource.Count - ItemsRemainingBuffer) { await pageable.LoadNextPage().ConfigureAwait(true); } pageable.IsLoadingPage = false; }
void Flowlistview_FlowItemAppearing(object sender, ItemVisibilityEventArgs e) { try { int currentIdx = 0; if (e.Item != "0") { currentIdx = items.Items.IndexOf(e.Item as AllAudioModel); Debug.WriteLine(currentIdx.ToString()); var lastItem = items.Items.Count - 1; if (currentIdx == lastItem) { if (pagenumber != 0) { LoadMoreProcess().Wait(); // Make the rest api call to get more data to list } } } } catch (Exception ex) { } //int currentIdx=0; //if(e.Item !="0") // currentIdx = listAudio.IndexOf(e.Item as AllAudioModel); //Debug.WriteLine(currentIdx.ToString()); //MessagingCenter.Send<SearchPage,AllAudioModel>(this,"LoadItems", e.Item as AllAudioModel); }
private void ListView_ItemDisappearing(object sender, ItemVisibilityEventArgs e) { if (e.Item == null) { return; } if (e.Item is IEnumerable) { Grouping <string, Dish> gr = (Grouping <string, Dish>)e.Item; if (xDishType.Text == gr.Key) { xDishType.Text = _stack.Pop(); //xDishType.Text = gr.Key; } xDishType.Text = gr.Key; //DisplayAlert("Event: ItemDisAppearing", gr.Key, "Ok"); // var list = (IEnumerable)e.Item; // string msg = ""; // foreach (Dish item in list) // { // msg += item.Name + "; "; // } // DisplayAlert("Event: ItemDisAppearing", msg, "Ok"); } //else //{ // var dish = (Dish)e.Item; // DisplayAlert("Event: ItemDisAppearing", dish.Name, "Ok"); //} }
private void OnItemAppearing(object sender, ItemVisibilityEventArgs e) { if (this.IsRefreshing) { return; } var _itens = this.ItemsSource as IList; if (_itens == null) { return; } if (e.Item != _itens[_itens.Count - 1]) { return; } if (e.Item.Equals(m_LastObject)) { return; } if (this.PageLoadCommand != null && this.PageLoadCommand.CanExecute(null)) { m_LastObject = e.Item; this.PageLoadCommand.Execute(null); } }
private async void JalyuktVisitLists_ItemAppearing1(object sender, ItemVisibilityEventArgs e) { try { if (totalItems != 0) { MaxIndex = Math.Ceiling(((decimal)totalListItems) / 5); if (index < MaxIndex) { if (CmVisitList != null && e.Item != null && e.Item == CmVisitList[CmVisitList.Count - 1]) { index++; if (index != MaxIndex) { loadingIndicator.IsVisible = true; loading.IsVisible = true; loading.IsRunning = true; await CallWebServiceForJalyuktVisitsDetail(index); } } } } } catch (Exception ex) { if (App.CurrentPage() == "jalyuktavisits") { if (ex.Message.Contains("Network")) { await DisplayAlert(AppResources.LError, AppResources.LWebserverNotResponding, AppResources.LOk); } } } }
private async void EventVisitLists_ItemAppearing1(object sender, ItemVisibilityEventArgs e) { try { if (totalItems != 0) { MaxIndex = Math.Ceiling(((decimal)totalListItems) / 5); if (index < MaxIndex) { if (EventList != null && e.Item != null && e.Item == EventList[EventList.Count - 1]) { index++; if (index != MaxIndex) { EventVisitLists.IsRefreshing = false; loadingIndicator.IsVisible = true; loading.IsVisible = true; loading.IsRunning = true; await CallWebServiceForEventVisitsDetail(index); } } } } } catch (Exception ex) { if (App.CurrentPage() == "events") { await DisplayAlert(AppResources.LError, AppResources.LSomethingWentWrong, AppResources.LOk); } } }
private void ListView_ItemDisappearing(object sender, ItemVisibilityEventArgs e) { if (e.Item is DayTableViewModel dayTableViewModel) { viewModel.ItemDisappearingCommand.Execute(dayTableViewModel); } }
private async void PlanetList_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (PlanetsList.Count == PlanetResponse.count) { PlanetListView.ItemAppearing += null; return; } var planet = e.Item as Planet; if (PlanetsList != null && PlanetsList.LastOrDefault() == planet) { PlanetListView.Footer = new ActivityIndicator() { IsVisible = true, IsRunning = true, Color = Color.Black }; PlanetResponse = await PlanetsApi.GetPlanestList(PlanetResponse.next); PlanetListView.Footer = null; if (PlanetResponse.results != null && PlanetsList != null && PlanetsList.Count > 0) { var list = PlanetResponse.results; list.ForEach(product => PlanetsList.Add(product)); } } }
//protected override async void OnAppearing() //{ // picker.SelectedIndex = 0; // // если нет подключение к интернету // if(!CrossConnectivity.Current.IsConnected) // { // InsertDataFromLocalDb(); // base.OnAppearing(); // return; // } // var response = await RequestBuilder.Create() // .AppendPathSegments("api", "product", "productAllGet") // добавляет к ендпоинт // .GetAsync(); // http://192.168.1.12:5002/api/menu/menuGet // var data = JsonConvert.DeserializeObject<Product[]>(await response.Content.ReadAsStringAsync()); // //если ошбка или пришла пустота берем данные из локальной БД // if(!response.IsSuccessStatusCode || !data.Any()) // { // InsertDataFromLocalDb(); // base.OnAppearing(); // return; // } // //занесение в локальную БД новых данных // using(var db = new ApplicationContext()) // { // db.Product.RemoveRange(db.Product); // await db.SaveChangesAsync(); // await db.Product.AddRangeAsync(data); // await db.SaveChangesAsync(); // menuList.ItemsSource = db.Product.ToList(); // InsertDataFromLocalDb(); // } // //если все ок то данные из инета // //menuList.ItemsSource = data; // void InsertDataFromLocalDb() // { // using(var db = new ApplicationContext()) // { // menuList.ItemsSource = db.Product.Where(x => x.Type == (MenuType) picker.SelectedIndex).ToList(); // } // } // //var selectedIndex = picker.SelectedIndex; // //var type = MenuType.Food; // //if (selectedIndex == 0) // //{ // // type = MenuType.Food; // //} // //else if (selectedIndex == 1) // //{ // // type = MenuType.Drink; // //} // //Menus = await RequestBuilder.Create() // // .AppendPathSegments("api", "product", "productGet") // добавляет к ендпоинт // // .SetQueryParam("type", type) // // .GetJsonAsync<Product[]>(); // http://192.168.1.12:5002/api/menu/menuGet //Menus = await RequestBuilder.Create() // .AppendPathSegments("api", "product", "productGet") // добавляет к ендпоинт // .SetQueryParam("type", type) // .GetJsonAsync<Product[]>(); // http://192.168.1.12:5002/api/menu/menuGet //menuList.ItemsSource = Menus; //} private async void ProductList_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var itemTypeObject = e.Item as Product; if (_productsViewModel.ProductList.Last() == itemTypeObject && _productsViewModel.ProductList.Count() != 1 && _productsViewModel.ProductList.Count() != 2) { if (_productsViewModel.IsBusy) { if (!CrossConnectivity.Current.IsConnected) { // Показываем из локальной БД using (var db = new ApplicationContext()) { _productsViewModel.LoadMoreEmployerResultInLockal((MenuType)picker.SelectedIndex); if (_productsViewModel.Error) { await DisplayAlert("Ошибочка", "Нет записей", "OK"); } } return; } // Загружать из интернета await _productsViewModel.LoadMoreEmployerResult((MenuType)picker.SelectedIndex); } } }
async void OnItemAppearing(object sender, ItemVisibilityEventArgs e) { if (isLoading) { return; } if (productList != null && e.Item == productList[productList.Count - 1]) { isLoading = true; ++page; try { var products = await App.wc.Product.GetAll(new Dictionary <string, string>() { { "page", String.Format("{0}", page) } }); foreach (Product p in products) { productList.Add(p); } isLoading = false; } catch (Exception ex) { --page; isLoading = false; Debug.WriteLine("ERROR: {0}", ex.Message); await DisplayAlert("Error", "Connection problem. Pull to refresh again later.", "OK"); } } }
private void FlowListViewItemDisappearing(object sender, ItemVisibilityEventArgs e) { var container = e.Item as IEnumerable; if (container != null) { EventHandler <ItemVisibilityEventArgs> handler = FlowItemDisappearing; var command = FlowItemDisappearingCommand; if (handler == null && command == null) { return; } foreach (var item in container) { handler?.Invoke(this, new ItemVisibilityEventArgs(item)); if (command != null && command.CanExecute(item)) { command.Execute(item); } } } }
public async void Hanlde_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (this.BindingContext != null) { await((TenantsPageModel)BindingContext).OnItemAppeared((Tenant)e.Item); } }
/// <summary> /// Load more messages when scroll reached the end of the page /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void OnLoadMoreMessages(object sender, ItemVisibilityEventArgs e) { if (dialogsManager.GetIsInitRequired(dialogId)) { return; } var message = (Message)e.Item; var messagesCount = messagesManager.GetMessagesCount(dialogId); if (messagesCount >= Consts.BatchSize && messagesManager.IsMessageOlderThanAll(dialogId, message.Id)) { activityIndicator.IsVisible = true; await NetExceptionCatchHelpers.CatchNetException( async() => { await messagesManager.UpdateMessagesFromApi(dialogId, messagesCount); messagesListView.ScrollIfExist(message, ScrollToPosition.Center); }, () => { OnLoadMoreMessages(sender, e); return(Task.CompletedTask); }, LocalizedStrings.MessagesNoInternetError); activityIndicator.IsVisible = false; } }
private void NearSearch_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (model != null) { model?.clubSearch.Loading(e.Item as Club); } }
private void ListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var selection = e.Item as PropertyModel; PID = selection.SID.Replace("ID: ", ""); PID = PID.Replace(" ", ""); }
/// <summary> /// thực hiểm Kiểm tra để load thêm danh sách /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void LvNews_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (model != null) { model?.ClubVM.Loading(e.Item as ContentInfo); } }
private void LocationList_ItemDisappearing(object sender, ItemVisibilityEventArgs e) { if (e.Item is Pin pin) { MyMapControl.Pins.Remove(pin); } }
void ItemList_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (e.Item.ToString() == Items.Last()) { AddItemsToList(Enumerable.Range(0, 10).Select(i => $"Item {i}")); } }
private void ListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var listView = (ListView)sender; var element = e.Item; IEnumerable <PropertyInfo> pInfos = (listView as ItemsView <Cell>).GetType().GetRuntimeProperties(); var templatedItems = pInfos.FirstOrDefault(info => info.Name == "TemplatedItems"); if (templatedItems != null) { var cells = templatedItems.GetValue(listView); Xamarin.Forms.ITemplatedItemsList <Xamarin.Forms.Cell> listCell = cells as Xamarin.Forms.ITemplatedItemsList <Xamarin.Forms.Cell>; ViewCell currentCell = listCell[e.ItemIndex] as ViewCell; if (e.ItemIndex > lastItemAppearedIndex) { currentCell.View.TranslationY = 50; //currentCell.View.Opacity = 0; currentCell.View.TranslateTo(currentCell.View.X, 0, 500, Easing.SinOut); //currentCell.View.FadeTo(1, 600); } else { currentCell.View.TranslationY = -50; //currentCell.View.Opacity = 0; currentCell.View.TranslateTo(currentCell.View.X, 0, 500, Easing.SinOut); //currentCell.View.FadeTo(1, 600); } lastItemAppearedIndex = e.ItemIndex; } }
private async void ListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (((Post)e.Item).Id == viewModel.Data.LastOrDefault().Id) { await viewModel.LoadMoreData(); } }
private void ListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if ((e.Item as ContactsListModel) == context.Contacts?.LastOrDefault()) { context.LoadMore.Execute(null); } }
//Event Item Appearing >> Get More video By ChannelUsers private async void VidoesListView_OnItemAppearing(object sender, ItemVisibilityEventArgs e) { try { var currentItem = e.Item as Classes.Video; var beforelastItem = Classes.VideoByChannelUsersList[Classes.VideoByChannelUsersList.Count - 2]; if (currentItem == beforelastItem) { if (!CrossConnectivity.Current.IsConnected) { await DisplayAlert(AppResources.Label_Error, AppResources.Label_Check_Your_Internet, AppResources.Label_OK); } else { //Title = AppResources.Label_Loading; var lastItem = Classes.VideoByChannelUsersList[Classes.VideoByChannelUsersList.Count - 1]; if (lastItem != null) { GetVideoByChannelUsers_Api(lastItem.dv_id); } } } } catch (Exception ex) { var exception = ex.ToString(); } }
private async void ItemAppearingEvent(object sender, ItemVisibilityEventArgs e) { TimeLineItem tItem = e.Item as TimeLineItem; if (tItem == null) { return; } int progenyId = tItem.ProgenyId; if (progenyId != _viewModel.Progeny.Id) { return; } tItem.VisibleBefore = true; int itemsNotVisibleBeforeCount = _viewModel.TimeLineItems.Count(t => t.VisibleBefore == false); if (_viewModel.CanLoadMore && itemsNotVisibleBeforeCount < 30) { await LoadItems(_timeLineList.Count - _dateHeaderCount, _viewModel.Progeny.Id, _viewModel.UserInfo.Timezone); } if (_viewModel.CanShowMore) { ShowNextItem(); } }
private void InfiniteListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var items = ItemsSource as IList; if (items == null || e.Item != items[items.Count - 1]) return; if (LoadMoreCommand != null && LoadMoreCommand.CanExecute(null)) LoadMoreCommand.Execute(null); }
private void ArticlesListViewOnItemAppearing(object sender, ItemVisibilityEventArgs e) { var index = this.GetIndexOf(e.Item);; if (index > this.ArticlesListView.ItemsSource.Count() - 5) { ((FeedViewModel) this.BindingContext).Articles.RestockAction(); } }
void InfiniteListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var items = ItemsSource as IList; if (items != null && e.Item == items [items.Count - 1]) { if (ReachedBottom != null) { ReachedBottom (this, e); } } }
void InfiniteListViewItemAppearing(object sender, ItemVisibilityEventArgs e) { var items = ItemsSource as IList; if (items != null && e.Item == items [items.Count - 1]) { if (LoadMoreCommand != null && LoadMoreCommand.CanExecute (null)) LoadMoreCommand.Execute (null); } }
void InfiniteListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { /*var items = ItemsSource as IList; if (this.IsLoading) return; if (items != null && !(((MainModel)e.Item).id == ((MainModel)items[items.Count - 1]).id)) return; IsLoading = true; if (LoadMoreCommand != null && LoadMoreCommand.CanExecute(null)) LoadMoreCommand.Execute(null);*/ }
async void List_ItemDisappearing (object sender, ItemVisibilityEventArgs e) { await Task.Run(() => { var items = list.ItemsSource as IList; if(items != null) { var index = items.IndexOf(e.Item); if (index < appearingListItemIndex) { Device.BeginInvokeOnMainThread(() => fab.Hide()); } appearingListItemIndex = index; } }); }
void XXListView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { var c = ItemsSource as IList; if (c == null) { return; } if (c[c.Count - 1] == e.Item) { if (MoreDataCommand != null) { MoreDataCommand.Execute(null); } } }
private async void ListLayer_ItemAppearing(object sender, ItemVisibilityEventArgs e) { #if DEBUG System.Diagnostics.Debug.WriteLine((e.Item as ListItem).TextItem); System.Diagnostics.Debug.WriteLine("LastData is " + listItems.Last().TextItem); #endif // ObservableCollection の最後が ListView の Item と一致した時に ObservableCollection にデータを追加するなどの処理を行ってください。 if (listItems.Last() == e.Item as ListItem) { bgLayer.IsVisible = true; frameLayer.IsVisible = true; await Task.Delay(2000); n++; AddListItem(cellAmount * n); frameLayer.IsVisible = false; bgLayer.IsVisible = false; } }
void _listView_ItemDisappearing(object sender, ItemVisibilityEventArgs e) { if (!this.ShowScrollIdenticator || this._listView.ItemsSource == null) return; var casted = this._listView.ItemsSource.Cast<object>(); if (casted.Count() == 0) return; if (e.Item == casted.First()) { this._upImage.IsVisible = true; } else if (e.Item == casted.Last()) { this._downImage.IsVisible = true; } }
void listView_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (e.Item == thread [0] && _init) { _init = false; return; } if (e.Item == thread [0]) { _init = true; SimulateLoadPrevious (20); } }
private async void ListViewItemAppearing(object sender, ItemVisibilityEventArgs e) { var item = e.Item as ArticleDto; if ((item != null) && (item.Equals(_viewModel.Items.Last()))) { await _viewModel.DownloadMorePagedArticles(); } }
/// <summary> /// ListView の最後が表示されたら追加分を取得するメソッドです。 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void List_ItemAppearing(object sender, ItemVisibilityEventArgs e) { if (allEventsInfo.Last() == e.Item as AllEventsInfo && fetchFlag) { waitingLayout.IsVisible = true; allEventsInfo = await GetJsonData(n); if (allEventsInfo == null) await DisplayAlert("Error", "すべてのサイトが死んでるかネットワークエラーです。\nネットワークの設定を確認してみてください。", "OK"); n++; list.ItemsSource = allEventsInfo; waitingLayout.IsVisible = false; } }
private void FlowListViewItemDisappearing(object sender, ItemVisibilityEventArgs e) { var container = e.Item as IEnumerable; if (container != null) { EventHandler<ItemVisibilityEventArgs> handler = FlowItemDisappearing; var command = FlowItemDisappearingCommand; if (handler == null && command == null) return; foreach (var item in container) { handler?.Invoke(this, new ItemVisibilityEventArgs(item)); if (command != null && command.CanExecute(item)) command.Execute(item); } } }
void ListView_ItemAppearing (object sender, ItemVisibilityEventArgs e) { //listView.ItemsFilled (); }
public void ExtendedListview_ItemAppearing (object sender, ItemVisibilityEventArgs e) { var items = ItemsSource as IList; if(items == null) return; var currentItemIndex = items.IndexOf(e.Item); if(currentItemIndex >= (PageNumber * PageSize - Offset) && LoadMoreCommand.CanExecute(null)) LoadMore(); }
async void OnItemAppearing(object sender, ItemVisibilityEventArgs e) { var item = (int)e.Item; if (!_viewModel.IsLoading && item == _viewModel.Items.Last()) await LoadData(); }
void _fixturesListView_ItemAppearing (object sender, ItemVisibilityEventArgs e) { if (Device.OS == TargetPlatform.Android) { if (e.Item == (_fixturesListView.ItemsSource as ObservableCollection<FixtureViewModel>).Last()) { fab.Hide (); } else { fab.Show (); } } }