我遇到了一点问题。我在父表单中有一个数据表。我打开一个对话框表单,获取数据表属性并创建一个复选框列表。这将用于导出这些列。但是当我运行应用程序时,parentform 属性为空。我尝试在父窗体和对话框窗体中设置它(我假设如果调用 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
}
为对话框表单提供对 DataGridTable 的引用。您可以在构造函数中传递它。
您应该避免使用 Parent/ParentForm 并避免强制转换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)