Tad*_*ada 5 c# organization winforms
所以我刚开始开发C#WinForm应用程序,我一直在研究的每个项目似乎都更大,需要更多的用户功能.如果我将所有功能添加到一个表单中,显然它可能会很快失控.我的上一个项目我将功能划分为单独的表单,每当有人说要执行"Feature1"时,我会实例化Feature1表单并将其显示为主表单作为其所有者的对话框(因此他们无法单击它).
我只是想知道其他什么方法可以保持代码在Forms中的组织.如果您被迫在单个表单上拥有大量的功能/功能,那么有一种很好的方法来保持项目的有序性吗?我只是讨厌拥有数百/数千行的代码文件.
答案可能只是在设计中,尝试预先设计UI,以便您可以使用多种形式?
我遇到的另一个例子.我创建了一个Tab Control,大约有5个标签.这5个标签有很多功能,都存储在同一个CS文件中.我还有其他选择吗?创建一个新的自定义TabControl类,其中包含该选项卡的特定功能?
我不介意阅读,所以如果有好的文章,请随时链接他们!
首选方法是控制器/演示者。这个想法是,窗口应该只负责实际处理其控件的 UI 事件,并且应该通过调用控制器上为窗口执行实际工作的方法来完成此操作。窗口可以具有必要的处理程序,也可以将 UI 事件直接链接到控制器方法;前者通常是更简单的方法,但是很容易在此处或那里偷偷地插入一行真正应该在 Controller 方法中的代码。通过这样做,您可以将 Form 类中的布局和表示逻辑与 Controller 中的业务逻辑分开。
Mark Hall 对用户控制的建议也是一个很好的建议。通过为选项卡或常见 UI 控件组合创建 UserControl 类,您可以从主窗体的代码中切断负责布局 UI 部分的逻辑,然后控件就“插入”,窗口以多种方式使用它。更简单的方法。这是实现自定义但可重复使用的控件所必需的;DRY 的基本原则是,如果在两个不同的地方有两行代码对两个不同但可互换的事物执行相同的工作,那么这些代码行应该合并到一个地方。
| 归档时间: |
|
| 查看次数: |
1242 次 |
| 最近记录: |