Communiquer entre deux Windows.Forms

Résolu
math289 Messages postés 4 Date d'inscription vendredi 9 février 2007 Statut Membre Dernière intervention 25 février 2008 - 3 sept. 2007 à 15:48
math289 Messages postés 4 Date d'inscription vendredi 9 février 2007 Statut Membre Dernière intervention 25 février 2008 - 3 sept. 2007 à 16:30
Bonjour,
je suis en train de faire un jeu d'échec en C# et j'ai un problème pour la promotion du pion,
je m'explique :
j'ai un premier formulaire dans lequel se trouve tout le programme et j'ai créer un deuxième formulaire qui permet de choisir par quel pièce remplacer le pion qui arrive sur la dernière ligne de l'échiquier(?). Donc je détecte bien quand le pion arrive sur la dernière ligne, j'arrive à afficher mon deuxième formulaire en faisant un ShowDialog. dans se formulaire il y a quatre radiobuttons pour la dame, le fou, la tour et le cavalier et j'aimerai bien que lorsque je clique sur ok après avoir choisi une pièce, une variable du premier formulaire soit modifiée, mais je n'y arrive pas, je sèche complètement .
Est-ce que l'un d'entre vous saurai m'aider?
Merci d'avance

2 réponses

Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
3 sept. 2007 à 16:04
Si tu rajoute a ton 2em formulaire une propriété publique (a qui tu donne la valeur choisie avant la fermeture du formulaire), tu pourra ensuite la récupérer dans ton premier formulaire. Ca pourrait ressembler a ca :

// Dans ton premier formulaire
if(promotionPion)
{
  // Affiche le formulaire de choix
  Form2 form2 = new Form2;
  form2.ShowDialog();
  // form2 est maintenant fermée, le choix a été fait
  Pion pion = form2.Pion;
}

// Dans Form2:

public Pion Pion
{
  get
  {
    // retourne le choix de l'utilisateur
  }
}


Working as designed
www.nikoui.fr
1
math289 Messages postés 4 Date d'inscription vendredi 9 février 2007 Statut Membre Dernière intervention 25 février 2008
3 sept. 2007 à 16:30
Merci pour cette réponse rapide, mon problème est résolu
0
Rejoignez-nous