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; }