Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

EventArgs.Empty Field

Definition

Namespace:
System
Assemblies:
mscorlib.dll, System.Runtime.dll
Assemblies:
netstandard.dll, System.Runtime.dll
Assembly:
System.Runtime.dll
Assembly:
mscorlib.dll
Assembly:
netstandard.dll
Source:
EventArgs.cs
Source:
EventArgs.cs
Source:
EventArgs.cs
Source:
EventArgs.cs
Source:
EventArgs.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Provides a value to use with events that do not have event data.

public: static initonly EventArgs ^ Empty;
public static readonly EventArgs Empty;
 staticval mutable Empty : EventArgs
Public Shared ReadOnly Empty As EventArgs 

Field Value

Examples

The following example shows a simple counting application that raises an event when a threshold is equaled or exceeded. The Empty field is passed to the OnThresholdReached method.

using System;

namespace ConsoleApplication1
{
 public class Program1
 {
 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, EventArgs e)
 {
 Console.WriteLine("The threshold was reached.");
 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)
 {
 OnThresholdReached(EventArgs.Empty);
 }
 }

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

 public event EventHandler? ThresholdReached;
 }
}
open System

type Counter(threshold) =
 let mutable total = 0

 let thresholdReached = Event<_>()

 member this.Add(x) =
 total <- total + x
 if total >= threshold then
 thresholdReached.Trigger(this, EventArgs.Empty)

 [<CLIEvent>]
 member _.ThresholdReached = thresholdReached.Publish

let c_ThresholdReached(sender, arg) =
 printfn "The threshold was reached."
 exit 0

let c = Counter(Random().Next 10)
c.ThresholdReached.Add c_ThresholdReached

printfn "press 'a' key to increase total"
while Console.ReadKey(true).KeyChar = 'a' do
 printfn "adding one"
 c.Add 1
Module Module1

 Sub Main()
 Dim c As Counter = New Counter(New Random().Next(10))
 AddHandler c.ThresholdReached, AddressOf c_ThresholdReached

 Console.WriteLine("press 'a' key to increase total")
 While Console.ReadKey(True).KeyChar = "a"
 Console.WriteLine("adding one")
 c.Add(1)
 End While
 End Sub

 Sub c_ThresholdReached(sender As Object, e As EventArgs)
 Console.WriteLine("The threshold was reached.")
 Environment.Exit(0)
 End Sub
End Module

Class Counter
 Private threshold As Integer
 Private total As Integer

 Public Sub New(passedThreshold As Integer)
 threshold = passedThreshold
 End Sub

 Public Sub Add(x As Integer)
 total = total + x
 If (total >= threshold) Then
 OnThresholdReached(EventArgs.Empty)
 End If
 End Sub

 Protected Overridable Sub OnThresholdReached(e As EventArgs)
 RaiseEvent ThresholdReached(Me, e)
 End Sub

 Public Event ThresholdReached As EventHandler
End Class

Remarks

Pass this value to event handlers that are associated with events that do not have data.

Applies to

See also


Feedback

Was this page helpful?