Affichage des form en CSHARP
adme
Messages postés
35
Statut
Membre
-
Nico# Messages postés 328 Date d'inscription Statut Membre Dernière intervention -
Nico# Messages postés 328 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici mon probleme. J'ai un programme en csharp avec des menus et des sous-menus. Je ne veux pas qo'on affiche deux meme fenetres en meme temps. SVp aide moi..Merci
Voici mon probleme. J'ai un programme en csharp avec des menus et des sous-menus. Je ne veux pas qo'on affiche deux meme fenetres en meme temps. SVp aide moi..Merci
3 réponses
-
Vérifie si une instance de ton processus existe déjà :)
Un petit exemple pour travailler avec les process :
https://stackoverflow.com/questions/2468994/how-to-detect-that-a-process-is-started-using-c-sharp-codewindows-service -
-
je pense plutôt qu'il ne souhaite pas ouvrir plusieurs fois la même form.
Car avec la méthode des process il empeche l'ouverture de son application plusieur fois mais des fenetres interne à l'application.
Pour empecher l'affichage d'une fenetre plusieur fois tu peut utiliser le pattern singleton.
ce qui doit donner de tête// Dans le fichier form2.cs private Form2() { InitializeComponent(); } private static Form2 _instanceUnique = null; public static Form2 InstanceUnique() { return _instanceUnique ?? (_instanceUnique = new Form2()); }
//dans le fichier form2.designer.cs rajouter la derniere ligne _instanceUnique protected override void Dispose(bool disposing) { if (disposing && components != null) { components.Dispose(); } base.Dispose(disposing); _instanceUnique = null; }
// Pour appeler la form Form2 frm = Form2.InstanceUnique(); frm.Show();