/// <summary> /// Populate the grid sequentially with a list of items, where each grid cell contains one item. /// </summary> /// <param name="grid"></param> /// <param name="item">List of children</param> /// <param name="replaceExisting">Whether to clear the grid children first</param> public static void AddGridItem(Grid grid, IEnumerable <View> item, bool replaceExisting, GridOrganizer.OrganizeMode organizeMode = GridOrganizer.OrganizeMode.HorizontalLeft) { // If replacing existing children, then does not retrive child list List <View> gridChildren; //Append new child to the grid if not replacing if (!replaceExisting) { gridChildren = grid.Children.ToList(); foreach (var child in item) { gridChildren.Add(child); } } else { grid.Children.Clear(); gridChildren = item.ToList(); } // Check if the grid is constrained, then constrain children output if (constraintBase.ContainsKey(grid) && gridChildren.Count > constraintBase[grid]) { gridChildren = gridChildren.GetRange(0, constraintBase[grid]); Console.WriteLine("GridManager 57: " + constraintBase[grid] + " " + grid.Children.Count + " " + gridChildren.Count); } grid.OrganizeGrid(gridChildren, organizeMode); }
public static void AddGridItem(string name, IEnumerable <View> item, bool replaceExisting, GridOrganizer.OrganizeMode organizeMode = GridOrganizer.OrganizeMode.HorizontalLeft) { AddGridItem(gridDataBase[name], item, replaceExisting, organizeMode); }