窗体表单,获取父窗体的属性

7
我遇到了一些问题。我在父窗体中有一个数据表格。我打开一个对话框窗体,获取数据表格属性并创建一个复选框列表。这将用于导出这些列。但是当我运行应用程序时,父窗体的属性为空。我尝试在父窗体和对话框窗体中设置它(如果调用ShowDialog()那么我认为这将自动完成)。
可以有人看看并告诉我哪里出错了吗? 来自对话框窗体:
frmParent MyParentForm = (frmParent)this.ParentForm;
for (int i=0; i<MyParentForm.DataGridTable.Count; i++)
{
   chkListExportItems.Add(MyParentForm.DataGrid.Columns[i].Name,true);
}

来自父表单:

frmExports MyForm = new frmExports();
MyForm.MdiParent = this;
if (MyForm.ShowDialog == DialogResult.OK)
{
   MyForm.SelectedItems // Do something
}
2个回答

4
将DataGridTable的引用传递给你的对话框表单。你可以在构造函数中传递它。 应避免使用Parent/ParentForm和转换操作。

4

1) "MdiParent"不是正确的属性。

2) 调用MyForm.ShowDialog(this);

3) 在模态窗体中使用"this.Owner"。


你能举个例子详细说明吗? - Azhar Mansuri

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接