sachie
Messages postés93Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention16 septembre 2010
-
12 mars 2008 à 09:38
sachie
Messages postés93Date d'inscriptionjeudi 7 juin 2007StatutMembreDernière intervention16 septembre 2010
-
12 mars 2008 à 11:11
J'ai voulu ré-up un topic mais apperement les topics résoluent ne remontent pas donc je créé le mien.
J'ai une dll et un exe, l'exe appel la dll qui affiche un form, de là je fais mes traitements, je désire ensuite créer un événement afin que mon exe sache que la form de la dll est cachée!
j'ai donc déclaré dans ma dll une classe:
public class FinEventArgs : EventArgs
{
public string Fin;
public FinEventArgs(string fin) { Fin = fin; }
}
puis dans une autre classe de ma dll:
public class ListesImages
{
public delegate void FinEventHandler(object sender, FinEventArgs fii);
public event FinEventHandler Fin;
public void goto_som_cata()
{
e = new FinEventArgs("fin");
maFormSuppZoom.Hide();
Nikoui
Messages postés794Date d'inscriptionvendredi 24 septembre 2004StatutMembreDernière intervention19 août 200813 12 mars 2008 à 11:04
La ligne :
maListeImage.Fin += new ListesImages.FinEventHandler(maListeImage_Fin);
signifie simplement que tu vas t'abonner à l'évènement "Fin" (en lisant la derniere ligne de ton premier message je ne suis pas sur que tu ai réellement compris ça).
Le fait que "Fin" soit null lorsque tu déclenche l'évènement signifie que personne n'est abonné à cet évènement (à ce moment précis).
Conclusion : tu appelle probablement goto_som_cata avant d'avoir fait maListeImage.Fin + = new ListesImages.FinEventHandler(maListeImage_Fin);
Donc soit il faut t'abonner plus tôt, soit il faut déclencher ton évènement plus tard...
<hr size="2" width="100%" />
Working as designed
www.nikoui.fr