public Cuadrante(Sudoku s, int cuad, Action<int, int, int> solicitudCambioNúmero, Action<int, int> solicitudSeleccionada, Action<int, int> solicitudCambioTinta)
        {
            var ug = new UniformGrid() { Rows = Sudoku.Tamaño / 3, Columns = Sudoku.Tamaño / 3 };
            UI = new Border()
            {
                BorderBrush = Brushes.Black,
                BorderThickness = new Thickness(2),
                Child = ug
            };

            for (int i = 0; i < Sudoku.Tamaño; ++i)
            {
                int f, c;
                Sudoku.CuadrantePosicionAFilaColumna(cuad, i, out f, out c);
                var celda = new Celda(s[f, c], (n) => solicitudCambioNúmero(f, c, n), () => solicitudSeleccionada(f, c), () => solicitudCambioTinta(f, c));
                _celdas[i] = celda;
                ug.Children.Add(celda.UI);
            }
        }
        void NuevaPartida()
        {
            _filaActual = _columnaActual = -1;
            _s = new Sudoku();
            _s.CeldaCambiada += CuandoCeldaCambiada;

            ActualizarVistaSudoku();

            _s[0, 0] = 2;
            _s[4, 4] = 1;
            _s[7, 7] = 5;
            _s[1, 7] = 8;
            _s[7, 1] = 4;
            _s[3, 2] = 6;
            _s[5, 6] = 9;
        }