Lire en anglais

Partager via


EventArgs Classe

Définition

Représente la classe de base pour les classes qui contiennent des données d’événement et fournit une valeur à utiliser pour les événements qui ne contiennent pas de données d’événement.

C#
public class EventArgs
C#
[System.Serializable]
public class EventArgs
C#
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class EventArgs
Héritage
EventArgs
Dérivé
Attributs

Exemples

L’exemple suivant montre une classe de données d’événement personnalisée nommée ThresholdReachedEventArgs qui dérive de la EventArgs classe . Une instance de la classe de données d’événement est passée au gestionnaire d’événements pour l’événement ThresholdReached .

C#
using System;

namespace ConsoleApplication3
{
    public class Program3
    {
        public static void Main()
        {
            Counter c = new(new Random().Next(10));
            c.ThresholdReached += c_ThresholdReached;

            Console.WriteLine("press 'a' key to increase total");
            while (Console.ReadKey(true).KeyChar == 'a')
            {
                Console.WriteLine("adding one");
                c.Add(1);
            }
        }

        static void c_ThresholdReached(object? sender, ThresholdReachedEventArgs e)
        {
            Console.WriteLine("The threshold of {0} was reached at {1}.", e.Threshold,  e.TimeReached);
            Environment.Exit(0);
        }
    }

    class Counter
    {
        private readonly int _threshold;
        private int _total;

        public Counter(int passedThreshold)
        {
            _threshold = passedThreshold;
        }

        public void Add(int x)
        {
            _total += x;
            if (_total >= _threshold)
            {
                ThresholdReachedEventArgs args = new()
                {
                    Threshold = _threshold,
                    TimeReached = DateTime.Now
                };
                OnThresholdReached(args);
            }
        }

        protected virtual void OnThresholdReached(ThresholdReachedEventArgs e)
        {
            ThresholdReached?.Invoke(this, e);
        }

        public event EventHandler<ThresholdReachedEventArgs>? ThresholdReached;
    }

    public class ThresholdReachedEventArgs : EventArgs
    {
        public int Threshold { get; set; }
        public DateTime TimeReached { get; set; }
    }
}

Remarques

Cette classe sert de classe de base pour toutes les classes qui représentent des données d’événement. Par exemple, la System.AssemblyLoadEventArgs classe dérive de EventArgs et est utilisée pour contenir les données pour les événements de chargement d’assembly. Pour créer une classe de données d’événement personnalisée, créez une classe qui dérive de la EventArgs classe et fournissez les propriétés permettant de stocker les données nécessaires. Le nom de votre classe de données d’événement personnalisée doit se terminer EventArgspar .

Pour transmettre un objet qui ne contient aucune donnée, utilisez le Empty champ .

Pour plus d’informations sur les événements, consultez l’article Gestion et déclenchement d’événements .

Constructeurs

EventArgs()

Initialise une nouvelle instance de la classe EventArgs.

Champs

Empty

Fournit une valeur à utiliser avec les événements qui n'ont pas de données d'événement.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Voir aussi