コード例 #1
0
        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);
            }
        }
コード例 #2
0
        public Cuadrante(Sudoku s, int cuad, Action <int, int, int> solicitudCambioNúmero, Action <int, int> solicitudSeleccionada, Action <UIElement> requestNumbersPopup)
        {
            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)
            {
                Sudoku.CuadrantePosicionAFilaColumna(cuad, i, out int f, out int c);
                var celda = new Celda(s[f, c], (n) => solicitudCambioNúmero(f, c, n), () => solicitudSeleccionada(f, c), (element) => requestNumbersPopup(element));
                _celdas[i] = celda;
                ug.Children.Add(celda.UI);
            }
        }