In meinem aktuellen Projekt verwende ich vier Rasteransichten in verschiedenen Registerkarten. Wie das System entwickelt hat, haben sie einige gemeinsame Methoden, z. B. zeigen eine benutzerdefinierte QuickInfo und ein Rechtsklick-Menü für wann in Zeilen.Wiederverwendung von Ereignishandlern in C#
Ich gehe jetzt durch eine Code-Reinigungsübung. Was ich unten sehe ist, dass ich jetzt vier Event-Handler habe, die dieselbe Methode aufrufen. Ist es in Ordnung, die Event-Handler so zu ändern, dass sie direkt auf GridMenu zeigen, wodurch der zusätzliche Code vermieden wird? Wird mir das später in der Entwicklung Probleme bereiten?
Offensichtlich im Moment verwende ich die standardmäßige even Handler-Namen.
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: Danke Rich B, ich habe gerade von diesen Backticks erfahren nachdem du deine Änderungen durchgelesen hast. – Sung