Delegate (function pointer)
& EventHandler
1. Declare Delegate
eg.
Public delegate int
mydelegate( int i, int s ) ;
2. Create method based on delegate
( must have same return type and parameters)
eg.
Public int Add (int
f, int s ) { return f + s;}
Public int Multiply ( int
f, int s) { return f*s; }
3. Assign method to delegate object (
pointing to methods)
eg.
mydelegate d1=new mydelegate( Add
);
mydelegate d1=new mydelegate( Multiply
);
call method via delegate
eg
d1 (5,7) => 12 //must have same type&number parameters
d3=d1+d2;
d3 (5,5) => 10 , 25
VB.Net (4 steps)
1. Public Delegate
Sub ButtonDelegate()
2.Public Sub LoadManualPayment()
'Implementaytion of method
End Sub
3. myButtonDelegate = New ButtonDelegate(AddressOf LoadManualPayment)
4. Dim myButtonDelegate
As ButtonDelegate
5.
myButtonDelegate()
|
4. Event declaration
eg
Public event mydelegate
myevent;
5. Subscibe events to method , method
fires up when event raised.
eg
clsobj.myevent+= new mydelegate(Add);
clsobj.myevent+= new mydelegate(Multiply);
clsobj.process();
public void process()
{
//check to see if event has any method subsribed
if (myevent !=null)
myevent( 7,7);
}
// output is 2 methods fires up, add & multiply => 7+7=14
and 7*7=49
Back
|