public void LoadListContainer(int page = 0) { if (ListContainer == null) { var listContainer = new Container(); listContainer.SetName("ListContainer"); listContainer.SetTexture(); var scrollContainerSizeX = (float)Size.X * ScrollContainerWidthRatio / 100; listContainer.SetPosition(Position); listContainer.SetSize(new Vector2(Size.X - scrollContainerSizeX, Size.Y)); AddChild(listContainer); } var rowRatio = (float)100 / RowsCountToShow; var columnRatio = (float)100 / ColumnsCountPerRow; if (!ListContainer.Rows.Any()) { for (int i = 0; i < MaxRowsCount; i++) { if (Columns.Length == 0) { continue; } var columnsToAdd = Columns.Skip(ColumnsCountPerRow * i) .Take(ColumnsCountPerRow) .ToList(); var row = new Row(); //row.SetFrame(Color.White); row.SetName("ListContainerRow"); //row.SetTexture(TextureManager.CreateTexture2DByRandomColor()); foreach (var column in columnsToAdd) { //column.TestInfo.Font.SetChangeTextEvent(() => { return column.DestinationRectangle.ToString(); }); //column.TestInfo.Show(); row.AddColumn(column, columnRatio); } //columnsToAdd.ForEach(c => row.AddColumn(c, columnRatio)); //columnsToAdd.ForEach(c => c.SetTexture(TextureManager.CreateTexture2DByRandomColor())); ListContainer.AddRow(row, rowRatio); } } ListContainer.Rows.ForEach(r => r.SetActive(false)); var collection = ListContainer.Rows.Skip(RowsCountToShow * page) .Take(RowsCountToShow) .ToList(); var counter = 0; foreach (var item in collection) { item.SetActive(true); item.TestInfo.Show(true); item.TestInfo.Font.SetText(((RowsCountToShow * page) + counter++).ToString()); } RefreshRectangle(); }