Je suis en train de programmer une application ou il y a plusieurs projets qui doivent communiquer entre eux. J ai fait une classe Communication qui me permet de faire circuler des Data entre differentes TextBox au moyen d'Events.
Voici une partie du code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
namespace Com
{
   public delegate void CommEventHandler (string data);
   //...
   public class Communication
   {
      //...
      public event CommEventHandler EventMessageSent;
      //...
      private void OnEventMessageSent()
      {
         if(EventMessageSent != null)
         {
            EventMessageSent(this.Data);
         }
      }
      public void SendMessage (string command)
      {
         this.Data = command;
         this.OnEventMessageSent();
      }
      //...         
   }
}
 
namespace ConsoleTest
{
   public classe Console
   {
      //...
      public Console()
      {
         InitializeComponent();
         Comm.EventMessageSent += new CommEventHandler(this.DisplayCommand);
      }
      //...
      public void DisplayCommand(string Data)
      {
          this.AppendData(Data);
      }
   }
//...
Le problème que j'ai trouvé quand j'ai débuggué le programme est que lorsque le programme passe dans la fonction il devrait déclencher l'évennement , mais lorsque il rentre dans la méthode OnEventMessageSent il n'a pas donc l'evennement n'est pas déclenché. pourtant je suis certain que
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Comm.EventMessageSent += new CommEventHandler(this.DisplayCommand);
est exécuté avant.
Est ce que vous voyez d'ou peut venir le problème !
Merci de votre aide.