Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1562 | Anzahl registrierter User: 1893 | Besucher online: 241
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Generische Event Args -> EventArgs


Autor: Boas Enkler
Sprache: C#
Bewertung:
noch nicht bewertet
Anzahl der Aufrufe: 3983
  
Kick it on dotnet-kicks.de  

Beschreibung:

Wer kennt das Problem nicht?

Man hat 10 Entitäten und nun braucht man 10 Events und kann sich an das dumpfsinnige schreiben einfacher EventArgs machen.

Aus diesem Grund gibts hier eine Generische Variante

EventArgs myArgs = new EventArgs(myEntityInstace);


Abgelegt unter: EventArgs, Extension, Generic, , EventArgs, System.EventArgs, EventArgs, EventPattern.



C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Diagnostics.Contracts;

namespace BE.Framework.Events
{
   /// <summary>
   /// Type Save Generic Eventargs
   /// </summary>
   /// <typeparam name="T">Type of the Argument Value</typeparam>
   /// <remarks>This generic inherited version of the default eventargs can be used to avoid many dummy eventarg classes. </remarks>
    public class EventArgs<T> : System.EventArgs
    {
        [ContractInvariantMethod]
        void ObjectInvariant()
        {
            Contract.Invariant(this.Value != null); 
        }

       private T m_Value;

       /// <summary>
       /// Gets or sets the value of the EventArgs.
       /// </summary>
       /// <value>The value.</value>
       public T Value
       { 
           get
           {
               return m_Value;
           }
           private set
           {
               
               m_Value = value;
           }
       }
        /// <summary>
        /// Initializes a new instance of the <see cref="GenericEventArgs&lt;T&gt;"/> class.
        /// </summary>
        public EventArgs()
            : base()
        {
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="GenericEventArgs&lt;T&gt;"/> class.
        /// </summary>
        public EventArgs(T value)
            : this()
        {
            Contract.Requires<ArgumentNullException>(value != null);
            Contract.Ensures(this.Value != null);
            this.Value = value;
        }
    }
}

Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)



Diese Snippets könnten für Sie interessant sein:
[C#] Datei/Ordner durch Erweiterungsmethoden abfragen
[C#] Programmpfad mittels Erweiterung ermitteln
[C#] Invoke Beispiel mittels Erweiterungs Methoden.
[C#] DateTime Extensions liefern TimeStamp
[C#] Komplette Exception Message (inkl. InnerExceptions) ausgeben
[VB.NET] Programmpfad mittels Erweiterung ermitteln in VB
[C#] LINQ-Erweiterung für eindeutige Liste
[C#] Type Color serialisieren und deserialisieren
[C#] Controls gleichen Typs von einem Container in Winform holen
[C#] Extension in einem Dateinamen/Pfad ändern
[C#] Threadsicherer Codeaufruf im Control-Kontext (Invoking)
[C#] Selektieren eines gekapselten Eintrags aus der ComboBox
[C#] Color Extension-Methods
[C#] IsNull and IsNullOrEmpty Extension-Methods become Lazy
[C#] Enum-Extension - Flag in einem Bitfeld gesetzt?
[C#] Anzahl der Monate zwischen 2 DateTime-Objekten (Extension)
[C#] "for" mal anders
[C#] Lazy Serialization-Extensions including Compression
[C#] SystemIconsImageListWrapper
[C#] Wie ToString() welche mit null-Strings umgehen kann
[C#] Generische Between Methode
[C#] Generische Liste per Reflection erzeugen
[C#] Generische Extension zum Auslesen eines Klassen-Attributes
[C#] Filtern mit dem Blacklist - Whitelist Verfahren
[C#] Generische Klasse die Objekte für eine ComboBox kapselt
[C#] generische zip funktion
[C#] Generisch XML De-/ Serialisieren
[C#] Eine allgemeine Liste (IEnumerable) in ein Array umwandeln
[C#] Singleton Basisklasse (thread-safe, generic, Lazy Creation)
[C#] Add Key-Value return old Value
[C#] WatchedList
[C#] INotifyPropertyChanged implementation with event pattern
[C#] INotifyPropertyChanged Implementierung mit IsChanged Events

schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.