예제 #1
0
        // Fonction qui lance la résolution automatique de la grille.
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Grille grid = App.viewModelSudoku.gridSelect;

            App.viewModelSudoku.completeGrilles(grid);
            for (int i = 0; i < grid.Size; i++)
            {
                for (int j = 0; j < grid.Size; j++)
                {
                    FrameworkElement b = createGridCase(grid, i, j);
                    FrontGrid.Children.Add(b);
                }
            }
        }
예제 #2
0
        // Fonction permettant de construire la grille selon l'état des cases.
        private FrameworkElement createGridCase(Grille g, int i, int j)
        {
            FrameworkElement b;
            char             c = g.grid[i, j].Valeur;

            if (c == '.')
            {
                b = new Button();
                ((Button)b).Background = Brushes.LightSkyBlue;
            }
            else
            {
                b = new Button();
                ((Button)b).Background = Brushes.LightSeaGreen;
                ((Button)b).Content    = c;
            }
            Grid.SetRow(b, i);
            Grid.SetColumn(b, j);
            return(b);
        }
예제 #3
0
        // Fonction permettant d'afficher la grille sudoku que l'on a selectionner dans la Liste.
        private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            // Netoyage de la grille.
            FrontGrid.Children.Clear();
            FrontGrid.ColumnDefinitions.Clear();
            FrontGrid.RowDefinitions.Clear();
            Grille grid = App.viewModelSudoku.gridSelect;

            // Construction de la grille selectionnée.
            for (int i = 0; i < grid.Size; i++)
            {
                FrontGrid.ColumnDefinitions.Add(new ColumnDefinition());
                FrontGrid.RowDefinitions.Add(new RowDefinition());
            }
            // Remplissage des cases de la grille.
            for (int i = 0; i < grid.Size; i++)
            {
                for (int j = 0; j < grid.Size; j++)
                {
                    FrameworkElement b = createGridCase(grid, i, j);
                    FrontGrid.Children.Add(b);
                }
            }
        }
예제 #4
0
        // Fonction qui récupère les données du fichier sélectionné et affiche chaque grille dans la liste.
        public void getGridFile(String path)
        {
            _path = path;
            if (readFile())
            {
                Grille g;
                Case   c;
                string line;
                int    tailleGrille;
                //Lire ligne par ligne
                while ((line = file.ReadLine()) != null)
                {
                    gridCount++;
                    g            = new Grille();
                    g.Nom        = file.ReadLine();
                    g.Date       = file.ReadLine();
                    g.Symbole    = file.ReadLine();
                    tailleGrille = g.Symbole.Length;
                    g.initializeTab(tailleGrille);
                    for (int i = 0; i < tailleGrille; i++)
                    {
                        string values = file.ReadLine();
                        for (int j = 0; j < values.Length; j++)
                        {
                            c = new Case(values[j], i, j, g.numSquare(i, j));
                            g.setTable(i, j, c);
                        }
                    }

                    //ajouter la grille créée à partir du fichier
                    GridList.Add(g);
                }
                //fermer le fichier
                file.Close();
            }
        }
예제 #5
0
        // Fonction que vérifie que la grille est valide ou non.
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            Grille grid = App.viewModelSudoku.gridSelect;

            App.viewModelSudoku.valideGrilles(grid);
        }
예제 #6
0
 public void completeGrilles(Grille grid)
 {
     grid.completeGrille();
 }
예제 #7
0
 public void valideGrilles(Grille grid)
 {
     grid.valideGrille();
 }