T
tshad
I was looking at events and have the following code:
***************************************************8
using System;
//declaring the event handler delegate
delegate void ButtonEventHandler(object source, int clickCount);
class Button
{
//Event Handler function
public void onButtonAction(object source, int clickCount)
{
Console.WriteLine("Inside Event Handler !!!");
}
//declaring the event
public event ButtonEventHandler ButtonClick;
//Function to trigger the event
public void clicked(int count)
{
Console.WriteLine("\nInside Clicked !!!");
//Invoking all the event handlers
if (ButtonClick != null) ButtonClick(this, count);
}
}
public class Dialog
{
public Dialog()
{
Button b = new Button();
//Adding an event handler
b.ButtonClick += new ButtonEventHandler(b.onButtonAction);
//Triggering the event
b.clicked(1);
b.ButtonClick += new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
//Removing an event handler
b.ButtonClick -= new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
b.ButtonClick -= new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
}
static void Main()
{
new Dialog();
Console.Read();
}
}
******************************************************
Here you have the onButtonAction as part of the Button class. So it has to
be defined as b.onButtonAction.
You can also do it with the handler outside of the Button Class:
**********************************************************
using System;
//declaring the event handler delegate
delegate void ButtonEventHandler(object source, int clickCount);
class Button
{
//declaring the event
public event ButtonEventHandler ButtonClick;
//Function to trigger the event
public void clicked(int count)
{
Console.WriteLine("\nInside Clicked !!!");
//Invoking all the event handlers
if (ButtonClick != null) ButtonClick(this, count);
}
}
public class Dialog
{
public Dialog()
{
Button b = new Button();
//Adding an event handler
b.ButtonClick += new ButtonEventHandler(onButtonAction);
//Triggering the event
b.clicked(1);
b.ButtonClick += new ButtonEventHandler(onButtonAction);
b.clicked(1);
//Removing an event handler
b.ButtonClick -= new ButtonEventHandler(onButtonAction);
b.clicked(1);
b.ButtonClick -= new ButtonEventHandler(onButtonAction);
b.clicked(1);
}
static void Main()
{
new Dialog();
Console.Read();
}
//Event Handler function
public void onButtonAction(object source, int clickCount)
{
Console.WriteLine("Inside Event Handler !!!");
}
}
********************************************************
Here I define it just as onButtonAction.
Which way is the way it is normally done?
Thanks,
Tom
***************************************************8
using System;
//declaring the event handler delegate
delegate void ButtonEventHandler(object source, int clickCount);
class Button
{
//Event Handler function
public void onButtonAction(object source, int clickCount)
{
Console.WriteLine("Inside Event Handler !!!");
}
//declaring the event
public event ButtonEventHandler ButtonClick;
//Function to trigger the event
public void clicked(int count)
{
Console.WriteLine("\nInside Clicked !!!");
//Invoking all the event handlers
if (ButtonClick != null) ButtonClick(this, count);
}
}
public class Dialog
{
public Dialog()
{
Button b = new Button();
//Adding an event handler
b.ButtonClick += new ButtonEventHandler(b.onButtonAction);
//Triggering the event
b.clicked(1);
b.ButtonClick += new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
//Removing an event handler
b.ButtonClick -= new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
b.ButtonClick -= new ButtonEventHandler(b.onButtonAction);
b.clicked(1);
}
static void Main()
{
new Dialog();
Console.Read();
}
}
******************************************************
Here you have the onButtonAction as part of the Button class. So it has to
be defined as b.onButtonAction.
You can also do it with the handler outside of the Button Class:
**********************************************************
using System;
//declaring the event handler delegate
delegate void ButtonEventHandler(object source, int clickCount);
class Button
{
//declaring the event
public event ButtonEventHandler ButtonClick;
//Function to trigger the event
public void clicked(int count)
{
Console.WriteLine("\nInside Clicked !!!");
//Invoking all the event handlers
if (ButtonClick != null) ButtonClick(this, count);
}
}
public class Dialog
{
public Dialog()
{
Button b = new Button();
//Adding an event handler
b.ButtonClick += new ButtonEventHandler(onButtonAction);
//Triggering the event
b.clicked(1);
b.ButtonClick += new ButtonEventHandler(onButtonAction);
b.clicked(1);
//Removing an event handler
b.ButtonClick -= new ButtonEventHandler(onButtonAction);
b.clicked(1);
b.ButtonClick -= new ButtonEventHandler(onButtonAction);
b.clicked(1);
}
static void Main()
{
new Dialog();
Console.Read();
}
//Event Handler function
public void onButtonAction(object source, int clickCount)
{
Console.WriteLine("Inside Event Handler !!!");
}
}
********************************************************
Here I define it just as onButtonAction.
Which way is the way it is normally done?
Thanks,
Tom