Gibt es ein typedef Äquivalent in C#, oder eine Möglichkeit, eine Art von ähnlichen Verhalten zu erhalten? Ich habe etwas gegoogelt, aber überall, wo ich suche, scheint negativ zu sein. Derzeit habe ich eine Situation ähnlich der folgenden:
class GenericClass<T>
{
public event EventHandler<EventData> MyEvent;
public class EventData : EventArgs { /* snip */ }
// ... snip
}
Nun muss man kein Raketenwissenschaftler sein, um herauszufinden, dass dies sehr schnell zu einer Menge Tipparbeit führen kann (Entschuldigung für das schreckliche Wortspiel), wenn man versucht, einen Handler für dieses Ereignis zu implementieren. Es würde am Ende etwas wie dieses sein:
GenericClass<int> gcInt = new GenericClass<int>;
gcInt.MyEvent += new EventHandler<GenericClass<int>.EventData>(gcInt_MyEvent);
// ...
private void gcInt_MyEvent(object sender, GenericClass<int>.EventData e)
{
throw new NotImplementedException();
}
Aber in meinem Fall habe ich bereits einen komplexen Typ verwendet, nicht nur einen int. Es wäre schön, wenn es möglich wäre, dies ein wenig zu vereinfachen...
Bearbeiten: d.h. vielleicht typedefing die EventHandler anstelle der Notwendigkeit, es neu zu definieren, um ähnliches Verhalten zu erhalten.