В моем текущем проекте я использую четыре вида сетки в разных вкладках. По мере разработки системы у них есть несколько общих методов, таких как показ пользовательской всплывающей подсказки и контекстное меню, когда в строках.Reuse event handler хорошая практика в C#
Теперь я выполняю упражнение по очистке кода. Ниже я вижу, что теперь у меня есть четыре обработчика событий, вызывающих один и тот же метод. Можно ли изменить обработчики событий, чтобы указать прямо на GridMenu, избегая лишнего кода? Повлияет ли это на меня позже?
Очевидно, что в настоящее время я использую стандартные имена обработчиков.
private void grdEnquiriesLevel1_ShowGridMenu(object sender, GridMenuEventArgs e)
{
GridMenu(sender, e);
}
private void grdApplicantsLevel1_ShowGridMenu(object sender, GridMenuEventArgs e)
{
GridMenu(sender, e);
}
private void grdApplicationsLevel1_ShowGridMenu(object sender, GridMenuEventArgs e)
{
GridMenu(sender, e);
}
private void grdInterviewsLevel1_ShowGridMenu(object sender, GridMenuEventArgs e)
{
GridMenu(sender, e);
}
private void GridMenu(object sender, GridMenuEventArgs e)
{
GridView view = (GridView)sender;
if (view.CalcHitInfo(e.Point).InRow)
popupMenu1.ShowPopup(Cursor.Position);
}
@Rich B: Спасибо Rich B, я только что узнал об этих backticks после прочтения ваших изменений. – Sung