【发布时间】:2017-06-08 12:02:55
【问题描述】:
我的主要形式是这个
现在我的问题发生在我单击添加 -> 学生时,这意味着打开一个新窗口,而不是这样做
如您所见,它会在同一个窗口中打开新表单。它没有用来做这个,然后我将主窗体设置为MdiContainer,并将其设置为第二个窗体的MdiParent。
我可以更改一个属性来让这个新表单在新窗口中弹出吗?因为我需要将 MdiContainer 属性保留为 True 以便我可以从 Form2 获取数据并在 Form1 中使用它
请让我知道您可能需要的任何其他信息来帮助我解决此问题,因为我不确定是什么原因造成的,所以我不知道要更改什么才能解决它,甚至我的意思是什么正在寻找
【问题讨论】:
-
您不应将
MdiContainer设置为true,也不需要将其设置为pass data to another form。 -
我同意 Dour High Arch 的观点……目前还不清楚,为什么你会在这种情况下使用 MDI。它不仅看起来没有必要,而且极大地复杂化了 UI 并为您工作。使用两个单独的表单似乎不仅对用户更友好,而且您管理表单的工作量也更少。是否有某些原因必须使用 MDI 实现?
-
不,没有理由,我只是需要将新数据添加到从
Form2收集的Form1中的列表中,如果没有 Mdi,我该怎么做? -
取决于您来回传递的内容,很可能会决定您将如何实现此数据传递。有很多方法可以做到这一点,一种简单的方法是在子表单的构造函数中传递所需的信息。 Simple data passing using forms
-
请记住该链接是一个非常简单的示例,您可能需要传递一个
Student“类”。另一种选择是在主窗体中为您希望子窗体更新的变量创建公共 getter 和 setter。尝试一些东西,如果它不起作用,请在此处发布。