从子窗口保存父窗口上的数据
本文关键字:窗口 数据 保存 | 更新日期: 2023-09-27 18:28:26
我有一个Windows应用程序。
windows应用程序上有我们的XML库。
public NetspotXMLLibV1 XMLLib;
public Form1()
{
InitializeComponent();
XMLLib = new XmlLibrary.NetspotXMLLibV1();
}
它还有一个自定义控件。
这个自定义控件上有一个带有的按钮
SelectWidgitWindow widgit = new SelectWidgitWindow();
widgit.ShowDialog();
单击某个按钮时,会打开新窗口。我在这个新窗户上做了一些事情。当我点击新窗口上的按钮时,我想在Form1窗口上保存东西
如何在我的新窗口(SelectWidgitWindow)上访问它?
Ie
form1.XMLLib.Add(ItemForProcessing);
或
Windows(1).XMLLib.Add(ItemForProcessing);
请帮助
使用ShowDialog重载,您可以将新表单的所有者传递给它:
Form2 f = new Form2();
f.ShowDialog(this.Parent);
形式2:
((Form1)Owner).MyProperty = 11;
几种方法:
1) 将希望父窗体提取的项显示为子窗体的属性。在父窗体的代码中,当ShowDialog
返回时,您可以从属性中获取要保存的值。
2) 将对父窗体的引用传递给窗体(可能是在构造窗体时)。然后子窗体可以调用父窗体上的某些方法或设置某些属性。请注意,这不是的首选,因为它将子窗体与父窗体耦合,这意味着它不能从任何其他窗体调用。