Frage

Ich habe ein bisschen ein Problem. Ich habe eine Datentabelle in der Mutterform. Ich öffne ein Dialogbox Formular, das die Datatable-Eigenschaft ruft und schafft eine Checkboxlist. Dies wird verwendet werden, um diese Spalten zu exportieren. Aber wenn ich die Anwendung die Eigenschaft Parent laufen ist null. Ich habe versucht, es in der übergeordneten und dialogbox Form Einstellung (ich davon ausgegangen wäre dies automatisch geschehen kann, wenn Showdialog () aufgerufen wurde).

Kann jemand einen Blick und sehen, wo ich falsch gehe? Vom dialogbox:

frmParent MyParentForm = (frmParent)this.ParentForm;
for (int i=0; i<MyParentForm.DataGridTable.Count; i++)
{
   chkListExportItems.Add(MyParentForm.DataGrid.Columns[i].Name,true);
}

Von der Mutterform:

frmExports MyForm = new frmExports();
MyForm.MdiParent = this;
if (MyForm.ShowDialog == DialogResult.OK)
{
   MyForm.SelectedItems // Do something
}
War es hilfreich?

Lösung

Geben Sie einen Verweis auf die DataGridTable auf Ihre dialogbox Form. Sie können es in den Konstruktor übergeben. Sie sollten mit Eltern- / Parent vermeiden und Gießen vermeiden.

Andere Tipps

1) "MdiParent" ist die falsche Eigenschaft verwendet wird.

2) Rufen Sie MyForm.ShowDialog (this);

3) Verwenden Sie "this.Owner" in der modalen Form.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top