Я хочу создать некоторый движок для monogame в C#. Мой движок должен включать кнопку. Я хочу сделать это с помощью событий. В принципе, я сделал это, но я хочу улучшить его, и начались мои проблемы.Как отправить имя метода в качестве параметра
class Button : Component
{
....
public event EventHandler<EventArgs> Click;
public void OnClick()
{
if (MousePressed() && Click != null)
{
Click(this, new EventArgs());
}
}
}
и когда я хочу, чтобы добавить Click событие я должен сделать это в другом классе:
_buttnon.Click += new EventHandler<EventArgs>(Method);
_buttnon.OnClick();
Это работает хорошо, но я хочу сделать это следующим образом:
_button.RegisterClickEvent(Method);
поэтому я добавил к классу Button код ниже:
public void RegisterClickEvent(XXX method) {
Click += new EventHandler<EventArgs>(method);
}
Я абсолютно не знаю, что мне нужно заменить XXX. Я пробовал:
public void RegisterClickEvent(void(object, EventArgs)method) {
Click += new EventHandler<EventArgs>(method);
}
но он не работает. Я пытался найти что-то в Google, но я не знаю, что я ищу.
«Я абсолютно не знаю, что мне нужно заменить XXX». 'EventHandler'? –