Je les utilise pour la "communication" entre différents objets, en tant qu'éditeur et modèle d'abonné.Délégués et événements
Est-ce quelques exemples que je vois que, parfois, l'événement est déclarée comme statique et parfois il n'est pas:
public delegate void LogProgress(string str)
public static event LogProgress LogProgressEvent;
if (LogProgressEvent != null)
LogProgressEvent(tempString);
Pourquoi et quand je dois utiliser statique?
Je dois toujours créer des événements NONE statiques, non? mais si je le fais, cela nécessitera que je crée une instance de la classe qui appelle l'événement comme: DataClass data = new DataClass(); data.LogProgressEvent + = new data.LogProgress (UpdateTextBox); – markiz
Soyez prudent. Si vous ne vous abonnez que dans quelques endroits clés (infrastructure, etc.), vous devriez être OK; mais évitez de vous abonner à vos entités de données ('Person',' Order', etc) –
mais si je continue à utiliser dans les objets "entités de données", le garbage collector ne nettoiera-t-il pas les dégâts après la disparition de cet objet? – markiz