Entwickler-Ecke

Sonstiges (.NET) - DockPanel Suite => InvalidOperationException


Namenlosnameless - So 29.01.12 00:35
Titel: DockPanel Suite => InvalidOperationException
Hallo!

Ich habe neulich hier im Forum von der Dockpanel suite gelesen. Ich bin gerade beim Einarbeiten, jedoch bekomme ich nicht all zu viel hin, da es kaum Dokumentationen über das Thema gibt!

Folgende Situation: Ich habe den Verweis zur DpS eingefügt, das Control "dockPanel" in die ToolBox gegeben. Die Form auf IsMdiContainer = true und das Dockpanel mit Dock = "Fill".
Mir ist es schon gelungen, einzelne Forms in das Dockpanel zu bringen! Dazu muss man die Child-Form von DockContent erben lassen.
Mit diesem Code kann ich meinen "DataExplorer" als gefakte "VS Toolbox" auf der linken Seite anzeigen lassen, sodass sie sich versteckt, wenn man mit dem Courser den Bereich verlässt.


C#-Quelltext
1:
2:
3:
4:
5:
6:
DataExplorer Child = new DataExplorer();
Child.MdiParent = this;
Child.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.DockLeftAutoHide;
Child.Text = "Daten-Explorer";

Child.Show(dockPanel1);


Wenn ich das gleiche Spiel mit einer anderen Form mache, die ich aber auf DockState.Document setze

C#-Quelltext
1:
2:
3:
4:
5:
Calendar cal = new Calendar();
cal.Text = "Kalender";
cal.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
cal.MdiParent = this;
cal.Show(dockPanel1);


bekomme ich folgende Fehlermeldung:

Quelltext
1:
Invalid parent form. When using DockingMdi or SystemMdi document style, the DockPanel control must be the child control of the main MDI container form.                    


Ich habe jetzt schon sehr lange gegooglet und bin auch auf diesen Link [http://www.mycsharp.de/wbb2/thread.php?postid=102544] gestoßen, aber da steht auch nicht wirklich die Lösung drinnen!

Gibts hier jemanden der sich mit der DpS einigermaßen gut auskennt, und mir einen Ansatz zu Lösung liefern könnte?

mfg Namenlosnameless

Moderiert von user profile iconTh69: Beitragsformatierung überarbeitet.


Th69 - So 29.01.12 12:15

Hallo Namenloser...

versuch mal MdiParent erst nach dem Show zu setzen, wie z.B. in DockPanel Suite Exception: ... [http://www.mycsharp.de/wbb2/thread.php?postid=312807] erwähnt (wenn auch dort eine andere Fehlermeldung erscheint).

Ich habe vor Jahren mit der DockPanelSuite gearbeitet und kann mich eigentlich an keine Probleme beim Einarbeiten erinnern. Es stimmt zwar, daß es wenig Dokus und Tutorials dafür gibt, aber das beigelegte DockPanelSuite-Beispielprogramm lieferte mir genug Anhaltspunkte zur Verwendung.

Ein paar weitere mögliche Probleme mit der DockPanelSuite wurden auch in andockbare Fenster [http://www.mycsharp.de/wbb2/thread.php?postid=279040] besprochen.


Namenlosnameless - So 29.01.12 22:01

Hallo!

Die Lösung in meinem Fall, war den DockingStyle von DockingMdi auf WindowDocking umzustellen!

mfg Namenlosnameless