DockPanel Suiteの使い方 その1

DockPanel Suiteを少し触ってみました。
配布サイトでダウンロードできるCookbookは、勿論英語な上に、2005年発行となっていたため、まだ、ちゃんと読んでいません。


とりあえず、
http://www.crystal-creation.com/software/technical-information/library/dockpanel.htm
.NETでDocking Windowを使う - .NET Tips (VB.NET,C#...)
を読みつつ、頑張ってみたのですが・・・。


正直、よく分からないです;-|
今つまっているところは、DockPanelにDocumentStyleというプロパティがあるのですが、それぞれがどういう意味なのかが分かりません。
次の表のような意味なのかなぁ?とは思いますが、確証がなく。

設定値 意味(untruth)
Docking MDI 親フォームを決め、それに付随する形でDockする(初期値)
Docking Window フォームに配置した、DockPanel上にDockする
Docking SDI フォームに配置した、DockPanel上にSDI形式でDockする
System MDI システム標準MDI

子フォームの配置は次のようなコードで行えます。

using WeifenLuo.WinFormsUI.Docking;

...

    //子フォームをインスタンス化
    ChildForm frm = new ChildForm();
    //DockPanelの左に配置し、表示させる
    frm.show(this.DockPanel1, DockState.DockLeft);

DocumentStyleプロパティがDocking MDI/Docking Windowで、上コードを試しましたが、どちらも同じような動作をしました。
ただ、Docking MDIの場合、配置されたフォームを移動しようとすると、例外が発生してしまいます。
例外の内容は、親フォームでない云々のような内容なのですが、

    //子フォームをインスタンス化
    ChildForm frm = new ChildForm();

    frm.MDIParent = this;
    frm.show()

は、DockPanelではなく、親フォームにくっ付くのは当然なわけで。

    //子フォームをインスタンス化
    ChildForm frm = new ChildForm();

    frm.MDIParent = this.DockPanel1;    //論外 フォームの親はフォーム
    frm.show()

は、ありえません。
単純にDocking Windowで進めれば良いような気がしますが、とてもモヤモヤします。
そもそも、それぞれプロパティ値のメリット・デメリットが分かっていませんし、その設定値によって、コーディングが変わってくるとなると、ちょっと考えてしまいます。
せめて、Cookbookではなくて、Referenceがあれば・・と思うのですが:-/
探し方が悪いのかな・・・?

追記

Downloadページを、よく見たらReferenceがありました。
Download Pageのリスト一番下にある、DockPanel Suite DocumentationがReferenceだったようです。
DockPanel Suite - Browse /DockPanel Suite Documentation/1.0 at SourceForge.net
UserManualに目がいって、見落としていました。


これによると、DocumentStyleプロパティは、

Specifies the style for document windows.

MemberName Description
DockingMdi Docked in a tabbed manner, MDI integration with the main form.
DockingWindow Docked in a tabbed manner, no MDI integration with the main form.
DockingSdi Docked in a tabbed manner, no MDI integration with the main form. Hide the tab when there is only one document in the DockPane.
SystemMdi System style MDI form.

となっていました。
和訳すると次のようになるのでしょうか。

メンバー名 説明
DockingMdi タブを用いた、MDI統合がメインフォームにドッキングされます。
DockingWindow タブを用いた、MDIでない統合がメインフォームにドッキングされます。
DockingSdi タブを用いた、MDIでない統合がメインフォームにドッキングされます。ただし、DockPaneにドキュメントが一つしかない場合は、タブを隠します。
SystemMdi システム標準のMDIです。


うーん。
説明を見ても、やっぱり、DockingMDIとDockingWindowの違いがピンときません:-