Или ещё другой способ:
Код |
public delegate void MPEventHandler(object sender, MPEventArgs e);
public class MPEventArgs : EventArgs { public int MID;
public MPEventArgs(int MID) { this.MID = MID; } }
#region EditEventRegion
private static readonly object EditEvent = new object();
[ Category("Action"), Description("Raised when the user clicks the EditButton.") ] public event MPEventHandler Edit { add { Events.AddHandler(EditEvent, value); } remove { Events.RemoveHandler(EditEvent, value); } }
// Привязывем клик кнопкм к нашему событию private void EditButton_Click(object sender, EventArgs e) { MPEventArgs a = new MPEventArgs(MID); OnEdit(a); }
// Метод вдзываеться при событии OnEdit protected virtual void OnEdit(MPEventArgs e) { MPEventHandler EditHandler = (MPEventHandler)Events[EditEvent]; if (EditHandler != null) { EditHandler(this, e); } } #endregion
|
Пример выдран из большого проекта, может быть не очень понятено что к чему... |