Hi,
it is basically standard in .NET that signature of an event handler method
consists of 'sender' argument and event argument type 'EventArgs' which
exposes optional event arguments. 'sender' represents the object which
raised the event in question. Object and EventArgs are types and they matter
with what is expected to be the signature of the event handler method.
Evenht can also declare a more specific type, deriving from EventArgs, to be
the event argument type however 'senbder' is always of type object.
So you could also have signature like this
Sub button1(Source As Object, e As EventArgs)
or
Sub button1(sender As Object, args As EventArgs)
or
Sub button1(sender As Object, e As EventArgs)
or
Sub button1(obj As Object, e As EventArgs)
...
e.g you can name the incoming arguments yourself as long as their types
match with the signature enforced by the event (basically delegate).
However, this does not mean you couldn't create your own events with
different signature, this is just pattern followed in .NET Framework's class
libraries.
More information
============
Events And Delegates
http://msdn.microsoft.com/library/d...bcn7/html/vaconEventsDelegatesInheritance.asp
Design Guidelines for Class Library Developers -> Event Naming Guidelines
http://msdn.microsoft.com/library/d.../cpgenref/html/cpconeventnamingguidelines.asp
Design Guidelines for Class Library Developers -> Event Usage Guidelines
http://msdn.microsoft.com/library/d...s/cpgenref/html/cpconeventusageguidelines.asp
--
Teemu Keiski
ASP.NET MVP, AspInsider
Finland, EU
http://blogs.aspadvice.com/joteke