La mia classe ha un evento che gli oggetti esterni sottoscriverà:Inoltro/inoltro eventi .NET
public event EventHandler<MessageReceivedEventArgs> MessageReceived;
Tuttavia, un oggetto Listener interno, in esecuzione su di essa la propria discussione, sarà effettivamente origine dell'evento.
private class Listener
{
public void Run()
{
// events raised here which should be forwarded
// to parent's MessageReceived
}
};
La mia inclinazione è quello di creare un evento con la stessa firma sul Listener, e sottoscrivere nella classe principale, al fine di raccogliere su MessageReceived. Questo mi sembra un po 'macchinoso, quindi mi chiedevo se c'è un modo accurato/idiomatico di inoltrare eventi come questo.
Questa è una soluzione piacevole, ma tenere presente che il gestore di eventi riceverà l'istanza di Listener come argomento del mittente, che potrebbe essere un problema ... –
Bello, mi piace! – marijne
Anche un buon punto sul mittente ... – marijne