public delegate void ReportStateEventHandler( object sender, ReportStateEventArgs e );
Public Delegate Sub ReportStateEventHandler( sender As Object, e As ReportStateEventArgs )
When creating a ReportStateEventHandler delegate, identify a method that will handle corresponding events.
To associate an event with an event handler, add a delegate instance to the event.
The event handler is called whenever the event occurs, unless the delegate is removed.