public async void ArrangeColumns(int numCol) { if (NewsList.Count == 0) { await LoadData(); } FirstColumn.Clear(); SecondColumn.Clear(); ThirdColumn.Clear(); FourthColumn.Clear(); if (numCol == 4) { AddToObservableCollection(NewsList.Take(3), FirstColumn); AddToObservableCollection(NewsList.Skip(3).Take(3), SecondColumn); AddToObservableCollection(NewsList.Skip(6).Take(3), ThirdColumn); AddToObservableCollection(NewsList.Skip(9).Take(3), FourthColumn); } else if (numCol == 3) { AddToObservableCollection(NewsList.Take(4), FirstColumn); AddToObservableCollection(NewsList.Skip(4).Take(4), SecondColumn); AddToObservableCollection(NewsList.Skip(8).Take(4), ThirdColumn); } else if (numCol == 2) { AddToObservableCollection(NewsList.Take(6), FirstColumn); AddToObservableCollection(NewsList.Skip(6).Take(6), SecondColumn); } else if (numCol == 1) { AddToObservableCollection(NewsList.Take(12), FirstColumn); } }
public override int GetHashCode() { unchecked { int hash = 17; hash = hash * 23 + FirstColumn.GetHashCode(); hash = hash * 23 + FirstColumnSortOrder.GetHashCode(); hash = hash * 23 + ((SecondColumn == null) ? 0 : SecondColumn.GetHashCode()); hash = hash * 23 + ((SecondColumnSortOrder == null) ? 0 : SecondColumnSortOrder.GetHashCode()); return(hash); } }
public void SplitCategoriesInColumns(int minColumnCount = 3) { if (MenuCategories == null || !MenuCategories.Any()) { return; } var totalItems = MenuCategories.Count(); if (totalItems >= minColumnCount) { FirstColumn.AddRange(MenuCategories); return; } var fisrtColSize = totalItems / 2 + 1; FirstColumn.AddRange(MenuCategories.Take(fisrtColSize)); SecondColumn.AddRange(MenuCategories.Skip(fisrtColSize)); }