如何用VB.NET格式做多个页面

时间:2011-04-29 16:00:32

标签: vb.net forms menu

我继承了一些我认为需要重组的VB.Net代码。该项目有三种形式,每种形式都是自己的Windows Form文件,它继承自System.Windows.Forms.Form。

问题是,所有这些表单共享一个公共导航菜单栏,当用户在表单之间切换时,它不会改变,因此原始程序员已经复制了三个文件中每个文件中的菜单代码,以便在每个文件中生成菜单!我认为这不可能是正确的。

要重构它,我想我会创建一个实现菜单的基本表单,然后让其他表单从中继承,但我遇到了Windows表单已经从上面提到的类继承的问题,并且可以' t继承自另一个类。

我注意到我可以添加一个名为“继承表单”的项目,但是这样就可以了吗?使用通用菜单栏创建多个屏幕的问题必须非常普遍。有没有一种真正的方法可以做到这一点?我应该使用继承的表单,还是应该只有一个基本表单,并使其他屏幕只是简单的类而不是表单?或者其他我不想的东西?

2 个答案:

答案 0 :(得分:1)

视具体情况而定;您可能需要考虑使用MDI表单。

我见过的另一个选项是将菜单/共享工具栏封装在UserControl中并在需要的地方使用。

答案 1 :(得分:0)

创建一个继承自Form类的类,并在那里添加常用菜单功能。然后让你的三个表单继承自这个新类而不是Form。