private async Task loadDataAsync()
        {
            var items = await DataItems.GetItemsAsync(pageIndex : 0, pageSize : PageSize);

            Items.AddRange(items);
            ListsingleItems.ItemsSource = Items;
        }
示例#2
0
        private async Task loadDataAsync()
        {
            IsWorking = true;
            var items = await DataItems.GetItemsAsync(pageIndex : 0, pageSize : PageSize);

            var groupItems = items.GroupBy(e => e.Title).Select(e => new ObservableGroupCollection <string, Items>(e)).ToList();

            Items.AddRange(groupItems);
            OnPropertyChanged("Items");
            GroupItems.ItemsSource = Items;
            IsWorking = false;
        }
示例#3
0
        public GroupViewList()
        {
            InitializeComponent();
            //BindingContext = new GroupListViewModel();
            Items = new InfiniteScrollCollection <ObservableGroupCollection <string, Items> >
            {
                OnLoadMore = async() =>
                {
                    // load the next page
                    IsWorking      = true;
                    ListItemsCount = 0;
                    foreach (var _itemslist in Items)
                    {
                        ListItemsCount += _itemslist.Count;
                    }
                    double _pagecount = (double)ListItemsCount / PageSize;
                    var    page       = Convert.ToInt32(Math.Ceiling(_pagecount));
                    var    items      = await DataItems.GetItemsAsync(page, PageSize);

                    var _items = items.GroupBy(e => e.Title).Select(e => new ObservableGroupCollection <string, Items>(e)).ToList();
                    if (_items.Count > 0)
                    {
                        foreach (var getGroupItems in _items.GroupBy(i => i.Header).ToList())
                        {
                            var _GetExistingGroupItems = Items.LastOrDefault(i => i.Header == getGroupItems.Key);
                            if (_GetExistingGroupItems != null && _GetExistingGroupItems.Count > 0)
                            {
                                // this is an existing group, so add the items to that
                                foreach (var _ExistingGroupedItems in getGroupItems.ToList())
                                {
                                    foreach (var _GroupListitems in _ExistingGroupedItems.ToList())
                                    {
                                        _GetExistingGroupItems.Add(_GroupListitems);  //Update items
                                    }
                                }
                            }
                            else
                            {
                                //Add new Group
                                Items.AddRange(getGroupItems);
                                GroupItems.ItemsSource = Items;
                            }
                        }
                    }

                    IsWorking = false;
                    return(null);
                }
            };
            loadDataAsync();
        }
        public SingleViewList()
        {
            InitializeComponent();
            Items = new InfiniteScrollCollection <Items>
            {
                OnLoadMore = async() =>
                {
                    // load the next page
                    var page  = Items.Count / PageSize;
                    var items = await DataItems.GetItemsAsync(page, PageSize);

                    IsWorking = false;
                    return(items);
                }
            };
            // load the initial data
            loadDataAsync();
        }