MDI 子フォームがランタイムで起動されると、その Toolbars は MDI 親フォームに含まれるツールバーでマージされます。2 つのツールバーが同じキーを持つ場合、これらのツールバーのツールはひとつのツールバーにマージされます。(フォームのメイン メニューバーに設定されるツールバーは、キーが同じであるかどうかに関係なくマージされます)。
2 つのツールバーがマージされると、同じキーを持ったり MDI 親のツールバーに既に存在するツールと同じ種類でない限り、MDI 子からの各ツールは親 MDI のツールバーに追加されます。このケースでは、ツールの MergeType プロパティは、アクションが取られたことを判断します。可能なアクションには、Default、Add、Replace、MergeItems(PopupMenuTools 用のみ)および Remove が含まれます。
Note
|
注: ツールの MergeType 設定に競合がある場合、子フォームのツール用に設定されている MergeType が優先されます。
|
デフォルトの MergeType ですべてのツールを開始します。この値に設定すると、ツールの種類に基づいてツールはデフォルト アクションをとります。ほとんどのツールは "Replace" にデフォルト設定されますが、その値は、「置き換えまたは追加」として効率的に機能します。MDI 子のツールバーのツールは、同じキーと同じ種類を持つ MDI 親のツールバーでひとつを置き換えますが、親のツールバーにそのようなツールがない場合、子のツールが親のツールバーに追加されます。
PopupMenu ツールは、MergeItems のデフォルト アクションを持ちます。このアクションは、同じキーを持つ 2 つのメニューに含まれるツールをマージするので、ひとつのメニューに表示されます。
追加アクションによって、MDI 親ツールバーのひとつに加えて MDI 子ツールバーにツールが表示されます。両方のツールを使用できます。
削除アクションは、ツールバーがマージされると、子と親の両方のツールバーからツールを削除します。これによって、親ツールバーで使用できるツールをオーバーライドする方法をユーザーに提供します。たとえば、MDI 子フォームで使用できるツールを持っているがひとつである場合、そのフォームにツールを追加して、その MergeType を Remove に設定できます。親フォームのツールバーに同じツールを配置して、すべての他のフォームで使用できるようにすることもできます。ツールが付属する子フォームがアクティブになると、ツールが親のツールバーから削除されます。
ツールをひとつのツールバーにマージすると、MergeOrder プロパティが、ツールが表示される順序を決定するために使用されます。マージされたツールのコレクションは、MergeOrder プロパティの値の順序で表示されます。2 つのツールが同じ MergeOrder を持つ場合、MDI 親のツールは、元の順序で MDI 子のツールに続くオリジナルの順序で表示されます。
デザインタイムでは、各ツールの MergeType プロパティは、UltraToolBarsManager エレメントを右クリックして [ユーザー設定] を選択して設定することができます。次に [ツール] タブでツールを選択します。MergeType および MergeOrder プロパティは、SharedProps で使用できます。