Probleme avec la fonction close

sami2072 Messages postés 2 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 20 avril 2011 - 18 avril 2011 à 20:31
StagiaireMsl Messages postés 43 Date d'inscription mardi 19 avril 2011 Statut Membre Dernière intervention 22 avril 2013 - 28 avril 2011 à 12:01
salut tout le monde,



je suis débutant en c# ,j ai crée deux form ,la 1ere pour la connexion et la deuxième pour le programme principal ,
j ai essai de fermer la form connexion avec this.close() et c'est pas marche ,il y a t il une autre solution.


merci d avance

4 réponses

cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
19 avril 2011 à 08:48
Salut,

à quel endroit fais-tu ton appel à this.close() ?
Peux-tu nous montrer ton code ?
Avec pour seule info "ça marche pas", c'est difficile de savoir d'où vient le souci ;)
0
sami2072 Messages postés 2 Date d'inscription dimanche 16 mars 2008 Statut Membre Dernière intervention 20 avril 2011
20 avril 2011 à 13:48
voila le code
      public void verification(string m1, string m2,int id) {

            if (m1.Equals(m2)==true)            {
                Form1 x = new Form1(id);
                x.ShowDialog();
                this.close();
            }
            else
            {
                MessageBox.Show("eurreur");
               
            }
        }

et merci :)
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
20 avril 2011 à 15:52
Re,

alors c'est assez simple : comme tu charges 'x' en modale (cf. ShowDialog()), la suite des instructions de ta fonction (dont le this.Close() n'est pas interprétée tant que 'x' ne sera pas fermée. Ce qui est d'ailleurs un fonctionnement tout à fait cohérent.
Normalement, lorsque tu fermes 'x' ta forme appelante doit se fermer également, ça se passe bien comac ?
0
StagiaireMsl Messages postés 43 Date d'inscription mardi 19 avril 2011 Statut Membre Dernière intervention 22 avril 2013 3
28 avril 2011 à 12:01
En faite, lorsque tu ferme ton form principale, ton programme s'arrête, personnelement, lorque j'appelle un autre form, je cache mon formulaire présent :

Form Prog = new formProg();
Prog.Show();
this.Hide();


Mais lorsque tu fermera l'autre form, ton form principale restera caché, donc je créer un evenement:

Prog.Closed+= new EventHandler(Prog_Closed);

...


public void Prog_Closed(object sender, EventArgs e) 
{
    this.Show();        
}
0
Rejoignez-nous