void CreateCellOnCellGrid(int boardWidth, int boardHeight) { // Clear before game. cellGrid.RowDefinitions.Clear(); cellGrid.ColumnDefinitions.Clear(); cellGrid.Children.Clear(); //Gridに列、行を追加 for (int i = 0; i < boardHeight; i++) { cellGrid.RowDefinitions.Add(new RowDefinition()); } for (int i = 0; i < boardWidth; i++) { cellGrid.ColumnDefinitions.Add(new ColumnDefinition()); } //i行目のj列目にテキストを追加 for (int i = 0; i < boardWidth; i++) { for (int j = 0; j < boardHeight; j++) { var cellUserControl = new CellUserControl(gameManager, new Point((byte)i, (byte)j)); cellUserControl.DataContext = gameManager.Data.CellData[i, j]; cellGrid.Children.Add(cellUserControl); Grid.SetColumn(cellUserControl, i); Grid.SetRow(cellUserControl, j); } } }
void CreateCellOnCellGrid(int boardWidth, int boardHeight) { // Clear before game. cellGrid.RowDefinitions.Clear(); cellGrid.ColumnDefinitions.Clear(); List <Cells.CellUserControl> cells = new List <CellUserControl>(); foreach (var ctrl in cellGrid.Children) { if (ctrl is Cells.CellUserControl) { cells.Add((Cells.CellUserControl)ctrl); } } foreach (var ctrl in cells) { cellGrid.Children.Remove(ctrl); } // end //Gridに列、行を追加 for (int i = 0; i < boardHeight; i++) { cellGrid.RowDefinitions.Add(new RowDefinition()); } for (int i = 0; i < boardWidth; i++) { cellGrid.ColumnDefinitions.Add(new ColumnDefinition()); } //i行目のj列目にテキストを追加 for (int i = 0; i < boardWidth; i++) { for (int j = 0; j < boardHeight; j++) { var cellUserControl = new CellUserControl(); cellUserControl.DataContext = gameManager.Data.CellData[i, j]; cellGrid.Children.Add(cellUserControl); Grid.SetColumn(cellUserControl, i); Grid.SetRow(cellUserControl, j); var changeColorUserCtrl = new ChangeColorUserCtrl(new Point(i, j)); cellGrid.Children.Add(changeColorUserCtrl); Grid.SetColumn(changeColorUserCtrl, i); Grid.SetRow(changeColorUserCtrl, j); } } }