我想创建一个具有一个主要表单的应用程序,该表单具有一个功能=添加新表单。
我不知道如何创建表单,它们是由用户动态创建的(主表单中的AddForm方法)。
所有子形式都相同,但其中一些支柱接收不同的参数(可以在ctor或更高版本中)。
我希望能够在关闭主表单时关闭所有表单。
在显示新表单之前我想显示设置表单(以获取表单参数)可能使用ShowDialog方法并对表单进行验证检查,如果表单验证新表单将显示,如果没有(或者如果用户预告取消)表格将被处理。
我知道MDI,但我真的更喜欢其他方式
有什么想法吗?
谢谢!
答案 0 :(得分:1)
关闭主窗体时关闭所有窗体有点容易,只需在“子”窗体的Show()方法中传递主窗体引用;例如如果您从main显示孩子,您可以:
child.Show(本);
如果您的主表单不是真正的“程序的主要形式”,但您想要关闭所有“子”表单,则需要这样做。
然而,将所有这些连接在一起最好是为了这个目的在一些特殊的类中完成,也许称为ScreenRepository。在这个类中,你随时都会有一组打开的表单,你可以将表单创建到这个类(这样这个类会自动注入表单父类)等等......拥有这个类很容易重新激活(给出如果形式落后于其他形式,如果需要则创建新形式等等......
答案 1 :(得分:0)
想法很简单创建一个应用程序,打开一个主窗体开头然后打开其他窗体,如果你需要关闭主窗体其余窗体也关闭。就像GIMP一样。