Всем привет. Вопрос заключается в следующей, есть такой обобщенный метод:
private void ClickOnReferences<T>(object sender, EventArgs e)
where T: Form, new()
{
string name = ((ToolStripMenuItem)sender).Name;
if (!CheckMdiChildrenInMdiContainer(name))
{
var form = new T();
form.MdiParent = this;
form.Name = name;
form.Show();
}
}
Необходимо на него подписать несколько обработчиков событий по клику
Я делал так
this.Students.Click += new System.EventHandler(this.ClickOnReferences<StudentsForm>);
Если выполнить сборку, то после сохранения он станет выглядить так
this.Students.Click += new System.EventHandler(this.ClickOnReferences);
И начнет выдавать ошибку, что нужно явно определить тип аргумента
Может я что неправильно делаю? У меня следующая суть задания, нужно при клике на определенный ToolStripMenuItem открывать определенную форму, сначала делал для каждого itemа свой обработчик и все работало, но решил сделать обобщенный и наткнулся на такую особенность. Так же, если вместо сборки запустить приложение, то все будет работать нормально, но дальше ситуацию повторяется