分离数百个事件处理程序

时间:2016-06-13 14:43:55

标签: c#

这是我多次遇到的代码管理问题。说我有一个winforms应用程序,并且有很多内容 - 数百个控件的内容,其中大多数都有附加的事件处理程序和方法。在寻找关于如何分离这么大的文件的建议时,想到的两个大的文件是区域&部分课程。然而,几乎每一个答案都被这些都诅咒了。

所以我想知道,分离出这样的东西的最佳做法是什么?将它们分成新的类是没有意义的,因为它们只是简单地控制事件处理程序。区域很好,但是如此多的代码仍然可能非常混乱。我有点不知所措,我无法弄清楚如何在这里应用SRP,我看到的任何建议似乎都被认为是不好的做法。

1 个答案:

答案 0 :(得分:3)

“正确”的方式是将表单拆分为用户控件。

部分类是为了将生成的代码与用户代码分开,而区域只是布局(在我看来并没用,但这只是一种意见)

在用户控件中拆分窗口可以促进正确的封装和重复使用。

根据项目的不同,清理它可能过于昂贵,但拆分几个简单的可能有助于提高可读性,并可能在调试时节省一些时间。此外,在添加新控件和逻辑时,请考虑添加用户控件并开始以这种方式拆分的过程。然后,成本将分摊更长的时间,并且只会支付您实际使用且需要可读的部分。

相关问题