Bonjour à tous,

J'ai un fonctionnement étrange que je n'arrive pas à m'expliquer et j'aurais bien aimé un petit œil extérieur. Notez que je débute en C#.

Je ne comprend pas pourquoi dans la boucle foreach, alors que j'ecris une ligne dans la TextBox, celle-ci n'apparait QUE au moment de changer d'itération. Pour être précis, dans mon code je m'attend à voir ma ligne au moment du MessageBox "Avant" alors qu'elle n'apparait qu'au moment du "Apres".

Pouvez-vous m'indiquer pourquoi ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if (MessageBox.Show("Etes-vous sûr de vouloir supprimer les répertoires cochés ?", "Confirmation svp",MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                foreach (string s1 in checkedListBox1.CheckedItems)
                {
                    MessageBox.Show("avant");
                    TextBox1.Text += "Suppression du répertoire" + s1 + "\n";
                    Cursor.Current = Cursors.WaitCursor;
                    try
                    {
                        Directory.Delete(repSourceGed + s1, true);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Erreur : " + ex.ToString());
                        TextBox1.Text += "Erreur : " + ex.GetType() + "\n";
                    }
                    MessageBox.Show("apres");
                }