Voilà, je débute en C# et j'aimerais créer un évènement qui entraîne un enregistrement.
Pour cela, j'ai tout d'abord défini une classe qui me permet d,émettre l'évènement:
Ensuite, j'ai implémenté une classe qui décrit mon évènement
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 public class emetteur_evenement { public emetteur_evenement() { // // TODO: Add constructor logic here // } public delegate void _evtHandler(object sender, evenement_miseajour evt); public event _evtHandler eventhandler; public virtual void envoyer_evenement(evenement_miseajour even) { eventhandler(this,even);} }
Enfin, dans une autre classe, j'ai défini mon pool d'évènement et le traitement de l'évènement.
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 public class evenement_miseajour:EventArgs { private probe changement; public evenement_miseajour() { } public evenement_miseajour(probe courant) { changement=courant; // // TODO: Add constructor logic here // } //Fonction permettant d'ajouter le nom du probe à l'arbre et le probe ä un objet de stockage public void diffusion(TreeNode noeud,Stockage stock ) { noeud.Text=changement.lire_nom(); stock.ajoute(changement); } }
Le programme passe à la compil mais lors de l'exécution, un message d'erreur indiquant que l'objet n'est pas instancié à la ligne suivante de ma classe émettrice d'évènement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 emis.eventhandler+=new emetteur_evenement._evtHandler(traitement_evenement); public void traitement_evenement(object emis, evenement_miseajour evt) {//evt.diffusion(arbre,tab); treeView1.Nodes.Add(arbre); }
Si quelqu'un pouvait m'aider, ce serait sympa.
Code : Sélectionner tout - Visualiser dans une fenêtre à part eventhandler(this,even);}
Partager