将SDI转换为MDI

时间:2014-04-10 01:17:59

标签: c# winforms mdi sdi

我是第一次参加C#开发的winforms课程。我正在使用VS Premium 2013。

我们一直在研究申请。对于我们的最终项目,我们的任务之一是将其从SDI转换为MDI。

主要形式的结构如下:

  1. 的MenuStrip
  2. 工具条
  3. 在自己的类中使用树视图控件拆分面板,在自己的类中使用listview控件,在自己的类中使用富文本框(这些都在主窗体上显示)
  4. 用作控件的用户控件,该状态栏停靠在表单底部
  5. 已经编写了所有点击事件和业务逻辑的代码。这已经是一个强大的应用程序。

    是否有最佳实践"将这样的SDI转换为MDI?这里有大量代码,除非得到更好的指导,否则我认为我必须创建一个新项目,移动到我可以然后重写所有支持事件处理程序和相关逻辑的类。

    是否有人可以推荐更具时间效率的选项?

1 个答案:

答案 0 :(得分:3)

没有一个答案,因为迁移的细节取决于您当前应用程序的细节。如果你写得好,那么几乎没有变化。它应该主要是在显示每个文档表单之前设置MdiParent。仍有一些细节需要考虑,但这将是大部分。

因此,这样的变化相对无痛是设计模式在开发中使用的主要原因之一。此外,项目中类型的耦合越少,在这些情况下它们就越容易移动。例如,如果您有两种类型,每种类型都依赖于另一种类型,那么任何更改都会对两者产生重大影响。如果这些类型是分离的,那么一个类型的改变可能对另一个类型完全没有影响。