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:
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
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.
Partager