L'un de vos commentaires faisait référence au type de retour du gestionnaire d'événements. Êtes-vous plus concerné par le type du gestionnaire ou par les données renvoyées par l'événement ? Si c'est le dernier, alors cette solution peut vous aider. Si ce n'est pas le cas, cette solution ne sera pas suffisante, mais elle peut vous aider à vous rapprocher de ce que vous recherchez.
Il vous suffit de déclarer vos gestionnaires d'événements comme des gestionnaires d'événements génériques à la fois dans l'interface et dans votre implémentation et vous pouvez personnaliser les résultats de retour.
Votre classe de béton ressemblerait à ceci :
public class ClsPictures : myInterface
{
// Implementing the IProcess interface
public event EventHandler<UpdateStatusEventArgs> UpdateStatusText;
//no need for this anymore: public delegate void UpdateStatusEventHandler(string Status);
public event EventHandler<StartedEventArgs> Started;
//no need for this anymore: public delegate void StartedEventHandler();
}
Votre interface ressemblerait à ceci :
public interface myInterface
{
event EventHandler<StartedEventArgs> Started;
event EventHandler<UpdateStatusEventArgs> UpdateStatusText;
}
Maintenant que les arguments de l'événement renvoient vos types, vous pouvez les accrocher dans n'importe quel gestionnaire que vous définissez.
Pour référence : https://msdn.microsoft.com/en-us/library/edzehd2t(v=vs.110).aspx