Sous C#, dans VS 2022: problème basique sur les évènements

molo2003 Messages postés 50 Date d'inscription mardi 9 janvier 2007 Statut Membre Dernière intervention 9 juin 2023 - 30 mai 2023 à 06:57
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 - 31 mai 2023 à 08:43

    Bonjour

 Un problème basique sur les évènements dans un programme WindForm en Visual Studio 2022 Entreprise

    J'avais délaissé le dev en C#; Aidez moi

    mon code:

        //  première classe

   public partial class Form2 : Form
    {

          public EventHandler event_momo;     //  déclaration de l'évènement
                                                                //  déjà ici, dans debogage,  "event_momo = null"  mais de type EventHandler  ????

        ....

         //  plus loin, dans  la méthode qui va déclencher l'évènement


           EventHandler     eh    =     event_momo;

                        if ( eh != null )

               {    eh.Invoke(this, EventArgs.Empty);  }
        ....
    }

........

                //  seconde classe

   public partial class Form1 : Form
    {
                   
        //   pour abonner une méthode à l'évènement

            Form2  f2  =  new Form2();

                f2.event_momo += Maj_fichier;
        ....


    }

            Évidemment, je suis ici parce qu'aucun évènement n'est déclenché.
            Je n'arrive pas à voir mon erreur.

       Dans le debogage de l'appli ,  je trouve toujours "event_momo" de type "EventHandler" mais de valeur toujours "= null" ( donc idem pour "eh").
        Lors de l'exécution de l'appli, le compilateur est sous silence  ... mais aucun évènement n'est lancé.
            Pourquoi ????   Merci de votre aide.

  Dans cette appli plutôt simple, tous les évènements  liés à des contrôles (genre click sur bouton ...) fonctionnent à merveille ....

                Molo


Windows / Firefox 113.0

A voir également:

2 réponses

Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 928
30 mai 2023 à 07:24
0
molo2003 Messages postés 50 Date d'inscription mardi 9 janvier 2007 Statut Membre Dernière intervention 9 juin 2023
31 mai 2023 à 07:43

Bonjour;

Toujours moi;  Ah bon , mes excuses pour le doublon.

je suis toujours en panne  sur "évènement" dans Winform de Visual Studio 2022.

Je me suis laisser guider par "Intelltsence" de VS 2022 pour déclarer le délégué et l'évènement  dans ma seconde Classe  ..... donc pas de raté ...

  Idem pour la déclaration de "abonnement à l'évènement" dans la première classe.

Quand le lance le débogage, le compilateur ne "crie" pas ... mais je retrouve toujours la valeur "null" affecté à l'évènement ... donc normal qu'il ne se passe rien.

Mais pourquoi une valeur nulle à cet évènement alors que mon code est propre ???

Je remets mon code modifié:

      Dans Namespace :

  public delegate void Th_AddEventHandler(object sender, EventArgs e);     // public obligatoire

    public partial class Form2 : Form

    {         ...
                      public event Th_AddEventHandler event_momo;

             ....

      // lancement de l'évènement:     .......  

              Th_AddEventHandler  eh = event_momo;
                        
                        eh?.Invoke(this, EventArgs.Empty);   ......

  }

  Dans Classe 1:

    //  abonnement à l'évènement:

  ......

 Form2 Form_nv_adh = new Form2();                      

       Form_nv_adh.event_momo += this.Evenement_Maj_fich;      //  abonnement à l'évènement

.....

}

Grand merci d'avance à vous.

Molo

0
Whismeril Messages postés 19022 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 avril 2024 928
31 mai 2023 à 08:43

Merci de continuer sur l'autre fil afin d'avoir un suivi.

Et sur cet autre fil, je t'ai demandé d'utiliser la coloration syntaxique.

0