EventArgs Class
TOC
Collapse the table of content
Expand the table of content

EventArgs Class

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

EventArgs is the base class for classes containing event data.

System.Object
  System.EventArgs
    More...

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

'Declaration
Public Class EventArgs

The EventArgs type exposes the following members.

  NameDescription
Public methodEventArgsInitializes a new instance of the EventArgs class.
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Public fieldStatic memberEmptyRepresents 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.

NoteNote:

For information on how to compile and run this example code, see Building examples that have static TextBlock controls for Windows Phone 8.


Imports System.Windows.Controls

' FireEventArgs: a custom event inherited from EventArgs.

Public Class FireEventArgs
    Inherits EventArgs

    Public Sub New(ByVal room As String, ByVal ferocity As Integer)
        Me.room = room
        Me.ferocity = ferocity
    End Sub 'New

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

    Public room As String
    Public ferocity As Integer
End Class


Public Class FireAlarm

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

    Delegate Sub FireEventHandler(ByVal sender As Object, ByVal fe As FireEventArgs)

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

    Public Event FireEvent As FireEventHandler


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

    Public Sub ActivateFireAlarm(ByVal room As String, ByVal ferocity As Integer)

        Dim fireArgs As New FireEventArgs(room, ferocity)

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

        RaiseEvent FireEvent(Me, fireArgs)

    End Sub
End Class

' The following event will be the EventHandler.

Class FireHandlerClass

    Private Shared _TextBlock As TextBlock


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

    Public Sub New(ByVal fireAlarm As FireAlarm, ByVal outputBlock As TextBlock)

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

        AddHandler fireAlarm.FireEvent, AddressOf ExtinguishFire

        FireHandlerClass._TextBlock = outputBlock

    End Sub


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

    Sub ExtinguishFire(ByVal sender As Object, ByVal fe As FireEventArgs)

        _TextBlock.Text &= vbCrLf
        _TextBlock.Text += String.Format("The ExtinguishFire function was called by {0}.", sender.ToString()) & vbCrLf

        ' Now, act in response to the event.

        If fe.ferocity < 2 Then
            _TextBlock.Text += String.Format("This fire in the {0} is no problem.  I'm going to pour some water on it.", fe.room) & vbCrLf
        Else
            If fe.ferocity < 5 Then
                _TextBlock.Text += String.Format("Using Fire Extinguisher to put out the fire in the {0}.", fe.room) & vbCrLf
            Else
                _TextBlock.Text += String.Format("The fire in the {0} is out of control.  I'm calling the fire department.", fe.room) & vbCrLf
            End If
        End If
    End Sub
End Class

Public Class Example

    Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

        ' Create an instance of the class that will be raising the event.
        Dim myFireAlarm As 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. 

        Dim myFireHandler As New FireHandlerClass(myFireAlarm, outputBlock)

        ' Now, use the FireAlarm class to raise a few events. 

        myFireAlarm.ActivateFireAlarm("Kitchen", 3)
        myFireAlarm.ActivateFireAlarm("Study", 1)
        myFireAlarm.ActivateFireAlarm("Porch", 5)

        Return
    End Sub
End Class


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

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
    Microsoft.Devices.CameraOperationCompletedEventArgs
    Microsoft.Devices.ContentReadyEventArgs
    Microsoft.Devices.Sensors.AccelerometerReadingEventArgs
    Microsoft.Devices.Sensors.CalibrationEventArgs
    Microsoft.Devices.Sensors.SensorReadingEventArgs(Of T)
    Microsoft.Phone.BackgroundAudio.PlayStateChangedEventArgs
    Microsoft.Phone.BackgroundTransfer.BackgroundTransferEventArgs
    Microsoft.Phone.Controls.ItemRealizationEventArgs
    Microsoft.Phone.Controls.NotifyEventArgs
    Microsoft.Phone.Controls.ObscuredEventArgs
    Microsoft.Phone.Controls.OrientationChangedEventArgs
    Microsoft.Phone.Controls.PivotItemEventArgs
    Microsoft.Phone.Maps.Controls.MapEventArgs
    Microsoft.Phone.Media.MediaStreamerEndedEventArgs
    Microsoft.Phone.Media.MediaStreamerFailedEventArgs
    Microsoft.Phone.Media.MediaStreamerOpenedEventArgs
    Microsoft.Phone.Net.NetworkInformation.NetworkNotificationEventArgs
    Microsoft.Phone.Notification.HttpNotificationEventArgs
    Microsoft.Phone.Notification.NotificationChannelConnectionEventArgs
    Microsoft.Phone.Notification.NotificationChannelErrorEventArgs
    Microsoft.Phone.Notification.NotificationChannelUriEventArgs
    Microsoft.Phone.Notification.NotificationEventArgs
    Microsoft.Phone.SecureElement.RegisterSecureElementItemEventArgs
    Microsoft.Phone.SecureElement.UserActionEventArgs
    Microsoft.Phone.Shell.ActivatedEventArgs
    Microsoft.Phone.Shell.ApplicationBarStateChangedEventArgs
    Microsoft.Phone.Shell.ClosingEventArgs
    Microsoft.Phone.Shell.DeactivatedEventArgs
    Microsoft.Phone.Shell.HideEventArgs
    Microsoft.Phone.Shell.LaunchingEventArgs
    Microsoft.Phone.Shell.MinimizeEventArgs
    Microsoft.Phone.Shell.RunningInBackgroundEventArgs
    Microsoft.Phone.Shell.ShowEventArgs
    Microsoft.Phone.Shell.VisibleRegionChangedEventArgs
    Microsoft.Phone.Tasks.TaskEventArgs
    Microsoft.Phone.UserData.AppointmentsSearchEventArgs
    Microsoft.Phone.UserData.ContactsSearchEventArgs
    System.Collections.Specialized.NotifyCollectionChangedEventArgs
    System.ComponentModel.AsyncCompletedEventArgs
    System.ComponentModel.CancelEventArgs
    System.ComponentModel.CurrentChangingEventArgs
    System.ComponentModel.DataErrorsChangedEventArgs
    System.ComponentModel.DoWorkEventArgs
    System.ComponentModel.ProgressChangedEventArgs
    System.ComponentModel.PropertyChangedEventArgs
    System.ComponentModel.PropertyChangingEventArgs
    System.Device.Location.GeoPositionChangedEventArgs(Of T)
    System.Device.Location.GeoPositionStatusChangedEventArgs
    System.Diagnostics.Contracts.ContractFailedEventArgs
    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.Controls.Primitives.ItemsChangedEventArgs
    System.Windows.Controls.Primitives.ManipulationStateChangedEventArgs
    System.Windows.Controls.Primitives.ViewportChangedEventArgs
    System.Windows.Data.FilterEventArgs
    System.Windows.Input.TouchFrameEventArgs
    System.Windows.Interop.NavigationStateChangedEventArgs
    System.Windows.Media.Imaging.DownloadProgressEventArgs
    System.Windows.Media.RenderingEventArgs
    System.Windows.Navigation.FragmentNavigationEventArgs
    System.Windows.Navigation.JournalEntryRemovedEventArgs
    System.Windows.Navigation.NavigationEventArgs
    System.Windows.Navigation.NavigationFailedEventArgs
    System.Windows.RoutedEventArgs
    System.Windows.StartupEventArgs
    System.Windows.VisualStateChangedEventArgs
    System.Xml.Linq.XObjectChangeEventArgs

Show:
© 2017 Microsoft