Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

EventArgs Class

EventArgs is the base class for classes containing event data.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

[ComVisibleAttribute(true)]
public class EventArgs

The EventArgs type exposes the following members.

  NameDescription
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360EventArgsInitializes a new instance of the EventArgs class.
Top

  NameDescription
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360Equals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360FinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360GetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360GetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360MemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360ToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Public fieldStatic memberSupported by Silverlight for Windows PhoneSupported by Xbox 360EmptyRepresents an event with no event data.
Top

This class contains no event data; it is used by events that do not pass state information to an event handler when an event is raised. If the event handler requires state information, the application must derive a class from this class to hold the data.

For more information about events, see the EventHandler topic.

The following code sample illustrates the use of EventArgs.

In this sample, FireEventArgs is a set of event arguments derived from EventArgs, and passed to the FireEventHandler when an event is raised by calling ActivateFireAlarm.


using System;
using System.Windows.Controls;

// FireEventArgs: a custom event inherited from EventArgs.

public class FireEventArgs : EventArgs
{
    public FireEventArgs(string room, int ferocity)
    {
        this.room = room;
        this.ferocity = ferocity;
    }

    // The fire event will have two pieces of information--
    // 1) Where the fire is, and 2) how "ferocious" it is.

    public string room;
    public int ferocity;

}


// Class with a function that creates the eventargs and initiates the event
public class FireAlarm
{

    // Events are handled with delegates, so we must establish a FireEventHandler
    // as a delegate:

    public delegate void FireEventHandler(object sender, FireEventArgs fe);

    // Now, create a public event "FireEvent" whose type is our FireEventHandler delegate.

    public event FireEventHandler FireEvent;

    // This will be the starting point of our event-- it will create FireEventArgs,
    // and then raise the event, passing FireEventArgs.

    public void ActivateFireAlarm(string room, int ferocity)
    {

        FireEventArgs fireArgs = new FireEventArgs(room, ferocity);

        // Now, raise the event by invoking the delegate. Pass in
        // the object that initated the event (this) as well as FireEventArgs.
        // The call must match the signature of FireEventHandler.

        FireEvent(this, fireArgs);
    }
}


// Class which handles the event

class FireHandlerClass
{

    private static TextBlock _textblock;


    // Create a FireAlarm to handle and raise the fire events.

    public FireHandlerClass(FireAlarm fireAlarm, TextBlock outputBlock)
    {

        // Add a delegate containing the ExtinguishFire function to the class'
        // event so that when FireAlarm is raised, it will subsequently execute
        // ExtinguishFire.

        fireAlarm.FireEvent += new FireAlarm.FireEventHandler(ExtinguishFire);

        FireHandlerClass._textblock = outputBlock;

    }

    // This is the function to be executed when a fire event is raised.

    void ExtinguishFire(object sender, FireEventArgs fe)
    {

        _textblock.Text += String.Format("\nThe ExtinguishFire function was called by {0}.", sender.ToString()) + "\n";

        // Now, act in response to the event.

        if (fe.ferocity < 2)
            _textblock.Text += String.Format("This fire in the {0} is no problem.  I'm going to pour some water on it.", fe.room) + "\n";
        else if (fe.ferocity < 5)
            _textblock.Text += String.Format("I'm using FireExtinguisher to put out the fire in the {0}.", fe.room) + "\n";
        else
            _textblock.Text += String.Format("The fire in the {0} is out of control.  I'm calling the fire department!", fe.room) + "\n";
    }
}

public class Example
{
    public static void Demo(System.Windows.Controls.TextBlock outputBlock)
    {

        // Create an instance of the class that will be firing an event.

        FireAlarm myFireAlarm = new FireAlarm();

        // Create an instance of the class that will be handling the event. Note that
        // it receives the class that will fire the event as a parameter.

        FireHandlerClass myFireHandler = new FireHandlerClass(myFireAlarm, outputBlock);

        //use our class to raise a few events and watch them get handled
        myFireAlarm.ActivateFireAlarm("Kitchen", 3);
        myFireAlarm.ActivateFireAlarm("Study", 1);
        myFireAlarm.ActivateFireAlarm("Porch", 5);

        return;

    }

}



Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

System.Object
  System.EventArgs
    System.Collections.Specialized.NotifyCollectionChangedEventArgs
    System.ComponentModel.AsyncCompletedEventArgs
    System.ComponentModel.CancelEventArgs
    System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs
    System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs
    System.ComponentModel.CurrentChangingEventArgs
    System.ComponentModel.DataErrorsChangedEventArgs
    System.ComponentModel.DoWorkEventArgs
    System.ComponentModel.ProgressChangedEventArgs
    System.ComponentModel.PropertyChangedEventArgs
    System.ComponentModel.PropertyChangingEventArgs
    System.Data.Services.Client.ReadingWritingEntityEventArgs
    System.Data.Services.Client.SendingRequestEventArgs
    System.Net.Sockets.SocketAsyncEventArgs
    System.Net.WriteStreamClosedEventArgs
    System.ResolveEventArgs
    System.Runtime.InteropServices.Automation.AutomationEventArgs
    System.ServiceModel.UnknownMessageReceivedEventArgs
    System.Threading.Tasks.UnobservedTaskExceptionEventArgs
    System.UnhandledExceptionEventArgs
    System.Windows.ApplicationUnhandledExceptionEventArgs
    System.Windows.Browser.HtmlEventArgs
    System.Windows.CheckAndDownloadUpdateCompletedEventArgs
    System.Windows.Controls.DataGridCellEditEndedEventArgs
    System.Windows.Controls.DataGridColumnEventArgs
    System.Windows.Controls.DataGridPreparingCellForEditEventArgs
    System.Windows.Controls.DataGridRowClipboardEventArgs
    System.Windows.Controls.DataGridRowDetailsEventArgs
    System.Windows.Controls.DataGridRowEditEndedEventArgs
    System.Windows.Controls.DataGridRowEventArgs
    System.Windows.Controls.DataGridRowGroupHeaderEventArgs
    System.Windows.Controls.DatePickerDateValidationErrorEventArgs
    System.Windows.Controls.DrawEventArgs
    System.Windows.Controls.FocusingInvalidControlEventArgs
    System.Windows.Controls.NotifyEventArgs
    System.Windows.Controls.Pivot.CxmlCollectionStateChangedEventArgs
    System.Windows.Controls.Pivot.PivotViewerCommandsRequestedEventArgs
    System.Windows.Controls.Pivot.PivotViewerFilterEventArgs
    System.Windows.Controls.Pivot.PivotViewerItemDoubleClickEventArgs
    System.Windows.Controls.Pivot.PivotViewerLinkEventArgs
    System.Windows.Controls.Pivot.PivotViewerViewUpdatingEventArgs
    System.Windows.Controls.Primitives.ItemsChangedEventArgs
    System.Windows.Data.FilterEventArgs
    System.Windows.Graphics.RenderModeChangedEventArgs
    System.Windows.Input.TouchFrameEventArgs
    System.Windows.Interop.NavigationStateChangedEventArgs
    System.Windows.Media.Imaging.DownloadProgressEventArgs
    System.Windows.Media.RenderingEventArgs
    System.Windows.Messaging.MessageReceivedEventArgs
    System.Windows.Navigation.FragmentNavigationEventArgs
    System.Windows.Navigation.NavigationEventArgs
    System.Windows.Navigation.NavigationFailedEventArgs
    System.Windows.Printing.BeginPrintEventArgs
    System.Windows.Printing.EndPrintEventArgs
    System.Windows.Printing.PrintPageEventArgs
    System.Windows.RoutedEventArgs
    System.Windows.StartupEventArgs
    System.Windows.VisualStateChangedEventArgs
    System.Xml.Linq.XObjectChangeEventArgs
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft