方法 : アクション ペイン上のコントロールのレイアウトを管理する
既定では、操作ウィンドウはドキュメントまたはワークシートの右側にドッキングされますが、左側、上部、または下部にドッキングすることもできます。 複数のユーザー コントロールを使用する場合、ユーザー コントロールが操作ウィンドウ上で正しくスタックされるようにコードを作成できます。 詳細については、「操作ウィンドウの概要」を参照してください。
対象: このトピックの情報は、Excel 2007 と Excel 2010、および Word 2007 と Word 2010 のドキュメント レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
コントロールのスタック順は、操作ウィンドウが垂直方向にドッキングされているか水平方向にドッキングされているかで異なります。
注意
ユーザーが実行時に操作ウィンドウのサイズを変更した場合、操作ウィンドウに合わせてコントロールのサイズも変更するように設定できます。 Windows フォーム コントロールの Anchor プロパティを使用すると、コントロールを操作ウィンドウに固定できます。 詳細については、「方法 : Windows フォームにコントロールを固定する」を参照してください。
チュートリアル : ユーザー コンテキストに応じた操作ウィンドウの変更 のサンプル コードを使用して、以下のプロシージャに必要な複数の操作ウィンドウ コントロールを作成できます。
注意
次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用する Visual Studio のエディションとその設定によって決まります。 詳細については、「設定の操作」を参照してください。
操作ウィンドウ コントロールのスタック順を設定するには
複数のユーザー コントロールまたは入れ子になった操作ウィンドウ コントロールが含まれる操作ウィンドウを使用した、Microsoft Office Word 用のドキュメント レベルのプロジェクトを開きます。 詳細については、「方法 : Word 文書に操作ウィンドウを追加する」を参照してください。
ソリューション エクスプローラーで ThisDocument.cs または ThisDocument.vb を右クリックし、[コードの表示] をクリックします。
操作ウィンドウ の OrientationChanged イベント ハンドラーで、操作ウィンドウが水平方向に配置されているかどうかをチェックします。
Private Sub ActionsPane_OrientationChanged(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles ActionsPane.OrientationChanged If Me.ActionsPane.Orientation = Orientation.Horizontal Then
private void ActionsPane_OrientationChanged(object sender, EventArgs e) { if (ActionsPane.Orientation == Orientation.Horizontal) {
水平方向に配置されている場合は、操作ウィンドウ コントロールを左からスタックします。水平方向ではない場合は、上からスタックします。
Me.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromLeft Else Me.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromTop End If End Sub
this.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromLeft; } else { this.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromTop; } }
C# では、ActionsPane のイベント ハンドラーを Startup イベント ハンドラーに追加する必要があります。 イベンド ハンドラーの作成方法の詳細については、「方法: Office プロジェクトでイベント ハンドラーを作成する」を参照してください。
private void ThisDocument_Startup(object sender, System.EventArgs e) { this.ActionsPane.OrientationChanged += new EventHandler(ActionsPane_OrientationChanged); }
プロジェクトを実行して、操作ウィンドウがドキュメントの上部にドッキングされている場合には操作ウィンドウ コントロールが左から右へ、操作ウィンドウがドキュメントの右側にドッキングされている場合にはコントロールが上から下へスタックされることを確認します。
使用例
Private Sub ActionsPane_OrientationChanged(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles ActionsPane.OrientationChanged
If Me.ActionsPane.Orientation = Orientation.Horizontal Then
Me.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromLeft
Else
Me.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromTop
End If
End Sub
private void ThisDocument_Startup(object sender, System.EventArgs e)
{
this.ActionsPane.OrientationChanged += new EventHandler(ActionsPane_OrientationChanged);
}
private void ActionsPane_OrientationChanged(object sender, EventArgs e)
{
if (ActionsPane.Orientation == Orientation.Horizontal)
{
this.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromLeft;
}
else
{
this.ActionsPane.StackOrder = Microsoft.Office.Tools.StackStyle.FromTop;
}
}
コードのコンパイル
この例で必要な要素は次のとおりです。
- 複数のユーザー コントロールまたは入れ子になった操作ウィンドウ コントロールが含まれる操作ウィンドウを使用した Word 用のドキュメント レベルのプロジェクト
参照
処理手順
チュートリアル : 操作ウィンドウから文書へのテキストの挿入
チュートリアル : ユーザー コンテキストに応じた操作ウィンドウの変更