Exemplo n.º 1
0
        private void FinalizeControls()
        {
            Tetris?.Dispose();

            Tetris = null;

            PrevFigureSet = 0;
            PrevColorSet  = 0;

            this.InvalidateMeasure();
        }
Exemplo n.º 2
0
        private void InitializeControls()
        {
            // движок

            Tetris = new TetrisBase(TankWidth, TankHeight);

            Tetris.GameOver = OnGameOver;

            SetFiguresAndColors();

            Tetris.PropertyChanged += Tetris_PropertyChanged;

            TankWidth  = Tetris.Width;
            TankHeight = Tetris.Height;

            this.DataContext = Tetris;

            AutoPause = false;

            // стакан (настраиваем элементы формы без указания размеров)

            GridTank.Children.Clear();

            GridTank.Columns = TankWidth;
            GridTank.Rows    = TankHeight;

            for (int X = 0; X < GridTank.Columns; X++)
            {
                for (int Y = 0; Y < GridTank.Rows; Y++)
                {
                    Rectangle Block = new Rectangle();
                    Block.RadiusX = BlockCornerRadius;
                    Block.RadiusY = BlockCornerRadius;

                    Block.Visibility = Visibility.Hidden;

                    GridTank.Children.Add(Block);
                }
            }

            // следующая фигура

            InitializeNextFigure();

            // прочее

            AutoPause = false;

            this.DataContext = Tetris;

            this.InvalidateMeasure();
        }