HOW TO:管理執行窗格的控制項配置
執行窗格預設停駐在文件或工作表的右側,但是,也可以停駐在左側、頂端或底端。 如果您是在使用多個使用者控制項,則可撰寫程式碼,以適當堆疊執行窗格上的使用者控制項。 如需詳細資訊,請參閱 執行窗格概觀。
**適用於:**本主題中的資訊適用於下列應用程式的文件層級專案:Excel 2007 和 Excel 2010、Word 2007 和 Word 2010。如需詳細資訊,請參閱依 Office 應用程式和專案類型提供的功能。
控制項的堆疊順序,視執行窗格是垂直還是水平停駐而定。
注意事項 |
---|
如果使用者在執行階段調整執行窗格的大小,則您可以設定控制項調整大小以與執行窗格相符。 您可以使用 Windows Form 控制項的 Anchor 屬性,將控制項錨定至執行窗格。 如需詳細資訊,請參閱 HOW TO:錨定 Windows Form 上的控制項。 |
您可使用逐步解說:根據使用者內容變更執行窗格中的範例程式碼,建立下列程序所需的多個執行窗格控制項。
注意事項 |
---|
在下列指示的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置: 您所擁有的 Visual Studio 版本和使用的設定決定了這些項目。 如需詳細資訊,請參閱 使用設定。 |
若要設定執行窗格控制項的堆疊順序
開啟 Microsoft Office Word 的文件層級專案,其中包含具有多個使用者控制項或巢狀執行窗格控制項的執行窗格。 如需詳細資訊,請參閱 HOW TO:將執行窗格加入至 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 事件處理常式。 如需建立事件處理常式的詳細資訊,請參閱 HOW TO:在 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 文件層級專案,具有執行窗格,其中包含多個使用者控制項或巢狀執行窗格控制項。