Feedback

EventHandler

Sprache: C#

Beim Erstellen von eigenen Eventhandlern kann man der generischen EventHandler<T>-Klasse seit .NET 4.5 auch Typen übergeben, die nicht von EventArgs erben. [code]public EventHandler<string> MyEvent;[/code] Bei .NET 4.0 oder älter ist das nicht möglich, weswegen man eine Klasse wie hier gezeigt einsetzen kann. [b]Benötigter Namespace[/b] System
/// <summary>
/// Stellt Informationen des Typs <typeparamref name="T"/> für ein Ereignis bereit.
/// </summary>
/// <typeparam name="T">Der Typ der bereit gestellten Informationen.</typeparam>
public class DataTransportEventArgs<T> : EventArgs
{
    /// <summary>
    /// Erstellt eine neu Instanz der <see cref="DataTransportEventArgs{T}"/> Klasse unter angabe des zu übertragenden Objekts.
    /// </summary>
    /// <param name="data">Das zu übertragende Objekt.</param>
    public DataTransportEventArgs(T data)
    {
        this.Data = data;
    }
    /// <summary>
    /// Ruft das übertragene Objekt ab.
    /// </summary>
    public T Data { get; private set; }
}
/// <summary>
/// Stellt Informationen des Typs <typeparamref name="T"/> für ein Ereignis bereit.
/// </summary>
/// <typeparam name="T">Der Typ der bereit gestellten Informationen.</typeparam>
public class DataTransportEventArgs<T> : EventArgs
{
    /// <summary>
    /// Erstellt eine neu Instanz der <see cref="DataTransportEventArgs{T}"/> Klasse unter angabe des zu übertragenden Objekts.
    /// </summary>
    /// <param name="data">Das zu übertragende Objekt.</param>
    public DataTransportEventArgs(T data)
    {
        this.Data = data;
    }
    /// <summary>
    /// Ruft das übertragene Objekt ab.
    /// </summary>
    public T Data { get; private set; }
}