一种自动调用一种方法的清洁方法?

Geo*_*ton 7 c# winforms

是否有可能以这种方式设计方法,它知道它必须在退出时自动连续调用下一个方法?

在下面的示例中,我必须调用Refresh()以在此事件发生后使我的表单重新绘制.问题是,Refresh()例如,20个不同的事件必须使表单刷新后,调用它是很难看的.例如

private void PriorityLine_Click(object sender, EventArgs e)
{
   _showPriorityLine = (_showPriorityLine) ? false : true;
  Refresh(); // Must call refresh for changes to take effect.
}
Run Code Online (Sandbox Code Playgroud)

我想我正在寻找的是某种签名,我可以应用于该方法,使其自动链接到下一个方法,无论从哪里调用.例如

(我知道这在语法上不正确.)

private void PriorityLine_Click(object sender, EventArgs e).Refresh()
{
   _showPriorityLine = (_showPriorityLine) ? false : true;
}
Run Code Online (Sandbox Code Playgroud)

我想从方法中包含的逻辑中分离方法的接口.我知道这将是确切的努力量,如果不是更多.例如,如果我要编辑该方法并意外删除了Refresh,则会导致我的应用程序中断.然而,如果Refresh方法超出了方法的实际逻辑,我可以在方法中做任何事情而不用担心删除下一个逻辑链.

And*_*sen 7

听起来像您想要的是面向方面的编程,有许多不同的框架可以让您在运行某些方法集之后“神奇地”发生事情,请看这里.Net中的AOP编程?