子コントロールのアンドック方式を制御する
コントロールの利用:インデックス への移動
DragMode プロパティが dmAutomatic に設定されている子コントロールが、他のドッキング サイトに移動するときのようにドラッグされた場合に、ドッキング サイトはそのコントロールを自動的にアンドックできます。ドッキング サイトは、OnUnDock イベント ハンドラを使用して、子コントロールがドラッグされたときに応答し、アンドックを禁止できます。
property OnUnDock: TUnDockEvent; TUnDockEvent = procedure(Sender: TObject; Client: TControl; var Allow: Boolean) of object;
__property TUnDockEvent OnUnDock = {read=FOnUnDock, write=FOnUnDock}; typedef void __fastcall (__closure *TUnDockEvent)(System::TObject* Sender, TControl* Client, TWinControl* NewTarget, bool &Allow);
Client パラメータはアンドックしようとする子コントロールを示します。子コントロールのアンドックを許可するには、Allow パラメータに true を設定し、ドッキング場所(Sender)に拒否させるには false を設定します。OnUnDock イベント ハンドラを実装するときには、他の子コントロール(存在する場合)が現在ドックされているかどうかわかると便利です。現在ドッキングされている他の子コントロール(存在する場合)の情報を取得するには、TControl 型のインデックス付き配列である DockClient プロパティ(読み取り専用)が使用できます。ドッキングされている子コントロールの数は、DockClientCount プロパティ(読み取り専用)に格納されています。