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);
                }
            }
        }
Example #2
0
        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);
                }
            }
        }