Bonsoir

J'ai lus le tutoriel sur le site de C#, ensuite j'ai voulus me lancer dans un petit programme en form. Mais j'ai un petit problème

"Cannot access a disposed object."

Mon programme se constitue de la manière suivante : (Les fichiers sont raccourcis)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
static void Main()
{
 
   Application.EnableVisualStyles();
   Application.SetCompatibleTextRenderingDefault(false);
   Dispatcher Dispatcher = new Dispatcher();
   Application.Run();
 
}
Mon fichier dispatcher me permet de crée les variables de départ et les transmettre au premier formulaire par référence.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
class Dispatcher
    {
        private ToolsClass HTools;
 
        public Dispatcher()
        {
            HTools = new ToolsClass();
            Screen1 HScreen1  = new Screen1(ref HTools);
            HScreen1.Show();
        }
    }
Mon Screen1 a pour unique fonction pour l'instant de multiplier la valeur par 2 et afficher la suite de résultat jusque 300.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Screen1 : Form
{
    public Screen1(ref Toolsclass HTools)
    {
        multiple();
        Screen2 HScreen2 = new Screen2(ref HTools);
        Screen2.show();
        Close();
    }
    public void multiple()
    {
        // Code de mutiple et modification de la textbox.
    }
}
Jusqu'ici pas de soucis, mais quand je lance un troisième formulaire, et tente le premier, j'ai l'erreur suivante :

"Cannot access a disposed object."

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Screen3 : Form
{
    public Screen3(ref Toolsclass HTools)
    {
        multiple();
        Screen3 HScreen3 = new Screen3(ref HTools);
        Screen3.show();
        Close();
    }
    public void suite()
    {
        // Code de suite et modification de la textbox.
    }
}
Pour résumer

1) Quand j'utilise deux form, la premier se ferme quand la seconde se lance.
2) Si je tente de passer sur 3 forms :
- Lancement de la première
- Ouverture de la seconde
- Fermeture de la première et echec ...


Merci d'avance, en espérant avoir été clair dans mes explications

Hantse.