ActionsPane 接口

表示 Word 或 Excel 的文档级自定义项中**“文档操作”**任务窗格的自定义用户界面。

命名空间:  Microsoft.Office.Tools
程序集:  Microsoft.Office.Tools.Common(在 Microsoft.Office.Tools.Common.dll 中)

语法

声明
<GuidAttribute("b835a67a-c3c0-45ba-9a3f-c878bf531dd5")> _
Public Interface ActionsPane _
    Inherits IDisposable
[GuidAttribute("b835a67a-c3c0-45ba-9a3f-c878bf531dd5")]
public interface ActionsPane : IDisposable

ActionsPane 类型公开以下成员。

属性

  名称 说明
公共属性 AccessibilityObject 获取分配给操作窗格的 AccessibleObject
公共属性 AccessibleDefaultActionDescription 获取或设置操作窗格的默认操作描述。此说明由辅助功能客户端应用程序使用。
公共属性 AccessibleDescription 获取或设置操作窗格的辅助性说明。此说明由辅助功能客户端应用程序使用。
公共属性 AccessibleName 获取或设置操作窗格的可访问名称。此名称由辅助功能客户端应用程序使用。
公共属性 AccessibleRole 获取或设置操作窗格的辅助角色。
公共属性 ActiveControl 获取或设置操作窗格上的活动控件。
公共属性 AllowDrop 获取或设置一个值,该值表示操作窗格是否可以接受用户拖放到它上面的数据。
公共属性 Anchor 获取或设置操作窗格绑定到的容器的边缘并确定用户控件如何随其父级一起调整大小。
公共属性 AutoRecover 获取或设置一个值,该值指示操作窗格解决方案与文档分离后,是否会自动重新附到文档上。
公共属性 AutoScaleDimensions 获取或设置操作窗格的设计尺寸。
公共属性 AutoScaleMode 获取或设置操作窗格的自动缩放模式。
公共属性 AutoScroll 获取或设置一个值指示是否操作窗格允许用户滚动到任何放置在其可见边界之外的控件。
公共属性 AutoScrollMargin 获取或设置操作窗格自动滚动边距的大小。
公共属性 AutoScrollMinSize 获取或设置操作窗格自动滚动的最小大小。
公共属性 AutoScrollOffset 获取或设置调用 ScrollControlIntoView 方法时操作窗格的滚动位置。
公共属性 AutoScrollPosition 获取或设置为操作窗格自动滚动定位的位置。
公共属性 AutoSize 基础结构。操作窗格不支持此属性。
公共属性 AutoSizeMode 获取或设置操作窗格控件自动调整自身大小的模式。
公共属性 AutoValidate 获取或设置一个值,该值指示当焦点更改时是否自动验证此操作窗格内的控件。
公共属性 BackColor 获取或设置该操作窗格的背景颜色。
公共属性 BackgroundImage 获取或设置该操作窗格的背景图像。
公共属性 BackgroundImageLayout 获取或设置操作窗格中的背景图像的位置和行为。
公共属性 BindingContext 获取或设置一个对象,该对象使所有控件处于和同一数据源同步绑定的操作窗格上。
公共属性 BorderStyle 获取或设置该操作窗格的边框式样。
公共属性 Bottom 获取操作窗格下边缘与其容器的工作区上边缘之间的距离(以像素为单位)。
公共属性 Bounds 获取或设置操作窗格控件(包括其非工作区元素)相对于其父控件的大小和位置(以像素为单位)。
公共属性 CanFocus 获取指示操作窗格是否可以接收焦点的值。
公共属性 CanSelect 获取指示操作窗格是否可以选中的值。
公共属性 Capture 获取或设置一个值,该值表示操作窗格是否已捕获鼠标。
公共属性 CausesValidation 获取或设置一个值指示是否操作窗格会引起在任何需要在接收焦点时执行验证的控件上执行验证。
公共属性 ClientRectangle 获取表示操作窗格的工作区的矩形。
公共属性 ClientSize 获取或设置操作窗格的工作区的高度和宽度。
公共属性 CompanyName 获取包含操作窗格的应用程序的公司名称或创建者。
公共属性 Container 基础结构。操作窗格不支持此属性。
公共属性 ContainsFocus 获取一个值,该值指示操作窗格或它的一个子控件当前是否有输入焦点。
公共属性 ContextMenu 获取或设置与操作窗格关联的快捷菜单。
公共属性 ContextMenuStrip 获取或设置与操作窗格关联的 ContextMenuStrip
公共属性 Controls 获取操作窗格种包含的控件集。
公共属性 Created 获取指示操作窗格是否已经创建的值。
公共属性 CurrentAutoScaleDimensions 获取屏幕的当前运行时尺寸。
公共属性 Cursor 获取或设置当鼠标指针位于操作窗格上显示的光标。
公共属性 DataBindings 为该操作窗格获取数据绑定。
公共属性 DisplayRectangle 获取表示操作窗格的显示区域的矩形。
公共属性 Disposing 获取指示操作是否在释放进程中的值。
公共属性 Dock 获取或设置哪个操作窗格控件边停靠到其父控件上并决定操作窗格控件如何与其父控件一起调整大小。
公共属性 DockPadding 基础结构。操作窗格不支持此属性。
公共属性 Enabled 获取或设置一个值,该值表示操作窗格是否可以对用户交互作出响应。
公共属性 Focused 获取指示操作窗格是否有输入焦点的值。
公共属性 Font 获取或设置由操作窗格显示的文本的字体。
公共属性 ForeColor 获取或设置操作窗格的前景色。
公共属性 Handle 获取操作窗格绑定到的窗口句柄。
公共属性 HasChildren 获取一个值,该值指示控件是否包含一个或多个子控件。
公共属性 Height 获取或设置操作窗格控件的高度。
公共属性 HorizontalScroll 获取与水平滚动条相关联的特性。
公共属性 ImeMode 获取或设置操作窗格的输入法编辑器 (IME) 模式。
公共属性 InvokeRequired 获取一个值,该值指示调用方在对操作窗格控件进行方法调用时是否必须调用 Invoke 方法,因为调用方位于创建操作窗格控件所在的线程以外的线程中。
公共属性 IsAccessible 获取或设置一个值,该值表示操作窗格对辅助功能应用程序是否可见。
公共属性 IsDisposed 获取指示操作窗口控件是否已被释放的值。
公共属性 IsHandleCreated 获取指示操作窗格控件是否有与其关联的句柄的值。
公共属性 IsMirrored 获取指示操作窗格是否被镜像的值。
公共属性 LayoutEngine 获取操作窗格控件的布局引擎的缓存实例。
公共属性 Left 获取或设置操作窗格控件左边缘与其容器的工作区左边缘之间的距离(以像素为单位)。
公共属性 Location 获取或设置该操作窗格的左上角相对于其容器的左上角的坐标。
公共属性 Margin 获取或设置控件之间的空间。
公共属性 MaximumSize 获取或设置大小,该大小是 GetPreferredSize 可以指定的上限。
公共属性 MinimumSize 获取或设置大小,该大小是 GetPreferredSize 可以指定的下限。
公共属性 Name 获取或设置操作窗格控件的名称。
公共属性 Orientation 获取一个值,该值指示垂直还是水平放置操作窗格。
公共属性 Padding 获取或设置操作窗格的 padding 属性。
公共属性 Parent 获取或设置操作窗格的父容器。
公共属性 ParentForm 基础结构。操作窗格不支持此属性。
公共属性 PreferredSize 获取操作窗格适合的矩形区域大小。
公共属性 ProductName 获取包含操作窗格的程序集的产品名称。
公共属性 ProductVersion 获取包含操作窗格的程序集的版本。
公共属性 RecreatingHandle 获取指示操作窗口控件当前是否重新创建其句柄的值。
公共属性 Region 获取或设置与操作窗格关联的窗口区域。
公共属性 Right 获取操作窗格右边缘与其容器的工作区左边缘之间的距离(以像素为单位)。
公共属性 RightToLeft 获取或设置一个值,该值表示操作窗格是否支持控件元素支持从右向左的字体设置。
公共属性 Site 获取或设置操作窗格的站点。
公共属性 Size 获取或设置操作窗格控件的高度和宽度。
公共属性 StackOrder 获取或设置一个值,该值指示控件在操作窗格上的堆叠方向。
公共属性 TabIndex 获取或设置在操作窗格的容器的控件的 Tab 键顺序。
公共属性 TabStop 获取或设置一个值指示是否用户能使用 Tab 键将焦点置于该操作窗格上。
公共属性 Tag 获取或设置包含有关操作窗格的数据的对象。
公共属性 Text 基础结构。操作窗格不支持此属性。
公共属性 Top 获取或设置操作窗格控件上边缘与其容器的工作区上边缘之间的距离(以像素为单位)。
公共属性 TopLevelControl 基础结构。操作窗格不支持此属性。
公共属性 UseWaitCursor 获取或设置一个值指示是否将使用等待光标用于当前操作窗格以及所有子控件。
公共属性 VerticalScroll 获取与垂直滚动条相关联的特性。
公共属性 Visible 获取或设置一个值,该值指示 ActionsPane 是否可见。
公共属性 Width 获取或设置操作窗格控件的宽度。
公共属性 WindowTarget 基础结构。操作窗格不支持此属性。

页首

方法

  名称 说明
公共方法 BeginInit 基础结构。
公共方法 BeginInvoke(Delegate) 在创建操作窗格控件的基础句柄所在线程上异步执行指定委托。
公共方法 BeginInvoke(Delegate, array<Object[]) 在创建操作窗格控件的基础句柄所在线程上,用指定的参数异步执行指定委托。
公共方法 BringToFront 将操作窗格控件带到 Z 顺序的前面。
公共方法 Clear 从文档中分离操作窗格解决方案。
公共方法 Contains 返回一个值,该值指示指定的控件是否是操作窗格的子级。
公共方法 CreateControl 强制创建可见操作窗格控件,包括创建句柄和任何可见子控件。
公共方法 CreateGraphics 为操作窗格控件创建 Graphics
公共方法 Dispose 执行与释放或重置非托管资源相关的应用程序定义的任务。 (继承自 IDisposable。)
公共方法 DoDragDrop 开始拖放操作。
公共方法 DrawToBitmap 支持呈现到指定的位图。
公共方法 EndInit 基础结构。
公共方法 EndInvoke 检索指定异步操作的返回值。
公共方法 FindForm 检索操作窗格所在的窗体。
公共方法 Focus 设置集中在活动窗格上输入。
公共方法 GetChildAtPoint(Point) 检索位于指定坐标处的子控件。
公共方法 GetChildAtPoint(Point, GetChildAtPointSkip) 检索位于指定坐标的子控件,并且指定是否忽略特定类型的子控件。
公共方法 GetContainerControl 沿着控件的父控件链向上,返回下一个 ContainerControl
公共方法 GetNextControl 按照子控件的 Tab 键顺序向前或向后检索下一个控件。
公共方法 GetPreferredSize 检索适合操作窗格的矩形区域的大小。
公共方法 Hide 从任务窗格用户界面中移除 ActionsPane 和控件,同时使任务窗格保持可见。
公共方法 Invalidate() 使操作窗格的整个图面无效会导致重绘操作窗格。
公共方法 Invalidate(Boolean) 使操作窗格的整个图面无效会导致向操作窗格发送绘制消息。(可选)使分配给操作窗格的子控件无效。
公共方法 Invalidate(Rectangle) 使操作窗格的指定区域无效(将其添加到操作窗格的更新区域,下次绘制操作时将重新绘制更新区域),并向操作窗格发送绘制消息。
公共方法 Invalidate(Region) 使操作窗格的指定区域无效(将其添加到操作窗格的更新区域,下次绘制操作时将重新绘制更新区域),并向操作窗格发送绘制消息。
公共方法 Invalidate(Rectangle, Boolean) 使操作窗格的指定区域无效(将其添加到操作窗格的更新区域,下次绘制操作时将重新绘制更新区域),并向操作窗格发送绘制消息。(可选)使分配给操作窗格的子控件无效。
公共方法 Invalidate(Region, Boolean) 使操作窗格的指定区域无效(将其添加到操作窗格的更新区域,下次绘制操作时将重新绘制更新区域),并向操作窗格发送绘制消息。(可选)使分配给操作窗格的子控件无效。
公共方法 Invoke(Delegate) 在拥有此操作窗格的基础窗口句柄的线程上执行指定的委托。
公共方法 Invoke(Delegate, array<Object[]) 在拥有操作窗格的基础窗口句柄的线程上,用指定的参数列表执行指定委托。
公共方法 PerformAutoScale 执行对操作窗格及其子级的缩放。
公共方法 PerformLayout() 强制操作窗格将布局逻辑应用于其所有子控件。
公共方法 PerformLayout(Control, String) 强制操作窗格将布局逻辑应用于其所有子控件。
公共方法 PointToClient 将指定屏幕点的位置计算成工作区坐标。
公共方法 PointToScreen 将指定工作区点的位置计算成屏幕坐标。
公共方法 PreProcessControlMessage 在调度键盘或输入消息之前,在消息循环内对它们进行预处理。
公共方法 PreProcessMessage 在调度键盘或输入消息之前,在消息循环内对它们进行预处理。
公共方法 RectangleToClient 计算指定屏幕矩形的大小和位置(以工作区坐标表示)。
公共方法 RectangleToScreen 计算指定工作区矩形的大小和位置(以屏幕坐标表示)。
公共方法 Refresh 强制操作窗格使其工作区无效并立即重绘自己和任何子控件。
公共方法 ResetBackColor 基础结构。操作窗格不支持此方法。
公共方法 ResetBindings 基础结构。操作窗格不支持此方法。
公共方法 ResetCursor 基础结构。操作窗格不支持此方法。
公共方法 ResetFont 基础结构。操作窗格不支持此方法。
公共方法 ResetForeColor 基础结构。操作窗格不支持此方法。
公共方法 ResetImeMode 基础结构。操作窗格不支持此方法。
公共方法 ResetRightToLeft 基础结构。操作窗格不支持此方法。
公共方法 ResetText 基础结构。操作窗格不支持此方法。
公共方法 ResumeLayout() 恢复正常的布局逻辑。
公共方法 ResumeLayout(Boolean) 恢复正常的布局逻辑,可以选择强制对挂起的布局请求立即进行布局。
公共方法 Scale 按指定的比例因子缩放操作面板和所有子控件。
公共方法 ScrollControlIntoView 将指定的子控件滚动到视图中。
公共方法 Select 激活操作窗格。
公共方法 SelectNextControl 激活下一个控件。
公共方法 SendToBack 将操作窗格控件发送到 Z 顺序的后面。
公共方法 SetAutoScrollMargin 设置自动滚动边距的大小。
公共方法 SetBounds(Int32, Int32, Int32, Int32) 为操作窗格在指定的位置和大小设定限值。
公共方法 SetBounds(Int32, Int32, Int32, Int32, BoundsSpecified) 为窗格在指定的位置和大小设定限值。
公共方法 Show 如果该任务窗格不可见,则显示任务窗格上的 ActionsPane,包括已添加到 ActionsPane 中的所有控件,但不显示该任务窗格。
公共方法 SuspendLayout 为操作窗格暂时挂起布局逻辑。
公共方法 Update 使操作窗格重绘其工作区内的无效区域。
公共方法 Validate() 通过顺序引发 ValidatingValidated 事件验证操作窗格的内容。
公共方法 Validate(Boolean) 验证操作窗格的内容;取决于是否打开了自动验证。
公共方法 ValidateChildren() 使支持验证的所有子控件都对其数据进行验证。
公共方法 ValidateChildren(ValidationConstraints) 使支持验证的所有子控件都对其数据进行验证。

页首

事件

  名称 说明
公共事件 AutoSizeChanged 基础结构。操作窗格不支持此事件。
公共事件 AutoValidateChanged AutoValidate 属性更改时发生。
公共事件 BackColorChanged BackColor 属性的值更改时发生。
公共事件 BackgroundImageChanged BackgroundImage 属性的值更改时发生。
公共事件 BackgroundImageLayoutChanged BackgroundImageLayout 属性更改时发生。
公共事件 BindingContextChanged BindingContext 属性的值更改时发生。
公共事件 CausesValidationChanged CausesValidation 属性的值更改时发生。
公共事件 ChangeUICues 焦点或键盘用户界面(UI)提示更改时发生。
公共事件 Click 在单击操作窗格时发生。
公共事件 ClientSizeChanged ClientSize 属性的值更改时发生。
公共事件 ContextMenuChanged ContextMenu 属性的值更改时发生。
公共事件 ContextMenuStripChanged ContextMenuStrip 属性的值更改时发生。
公共事件 ControlAdded 在将新控件添加到 Controls 集合时发生。
公共事件 ControlRemoved 在从 Controls 集合移除控件时发生。
公共事件 CursorChanged Cursor 属性的值更改时发生。
公共事件 Disposed 在释放操作窗格时发生。
公共事件 DockChanged Dock 属性的值更改时发生。
公共事件 DoubleClick 在双击操作窗格时发生。
公共事件 DragDrop 拖放操作完成时发生。
公共事件 DragEnter 在将对象拖入操作窗格的边界时发生。
公共事件 DragLeave 在操作窗格的边界外拖动对象时发生。
公共事件 DragOver 在操作窗格的边界上拖动对象时发生。
公共事件 EnabledChanged Enabled 属性值更改后发生。
公共事件 Enter 在进入操作窗格时发生。
公共事件 FontChanged Font 属性值更改时发生。
公共事件 ForeColorChanged ForeColor 属性值更改时发生。
公共事件 GiveFeedback 在执行拖动操作期间发生。
公共事件 GotFocus 在操作窗格收到焦点时发生。
公共事件 HandleCreated 在为操作窗格创建句柄时发生。
公共事件 HandleDestroyed 在操作窗格的句柄处于销毁过程中时发生。
公共事件 HelpRequested 在用户请求操作窗格的帮助时发生。
公共事件 ImeModeChanged ImeMode 属性更改时发生。
公共事件 Invalidated 在操作窗格的显示需要重绘时发生。
公共事件 KeyDown 当操作窗格具有焦点并按下某个键时发生。
公共事件 KeyPress 当操作窗格具有焦点并按下某个键时发生。
公共事件 KeyUp 当操作窗格具有焦点并释放某个键时发生。
公共事件 Layout 在操作窗格应重新定位其子控件时发生。
公共事件 Leave 在输入点离开操作窗格时发生。
公共事件 Load 在操作窗格首次变得可见之前发生。
公共事件 LocationChanged Location 属性值更改后发生。
公共事件 LostFocus 在操作窗格失去焦点时发生。
公共事件 MarginChanged 在操作窗格的边距发生更改时发生。
公共事件 MouseCaptureChanged 在操作窗格失去或获得鼠标捕获时发生。
公共事件 MouseClick 在使用鼠标单击操作窗格时发生。
公共事件 MouseDoubleClick 在使用鼠标双击操作窗格时发生。
公共事件 MouseDown 当鼠标指针位于操作窗格上并按下鼠标键时发生。
公共事件 MouseEnter 在鼠标指针进入操作窗格时发生。
公共事件 MouseHover 在鼠标指针悬停在操作窗格上时发生。
公共事件 MouseLeave 在鼠标指针离开操作窗格时发生。
公共事件 MouseMove 在鼠标指针移动到操作窗格时发生。
公共事件 MouseUp 在鼠标指针在操作窗格上并释放鼠标键时发生。
公共事件 MouseWheel 在移动鼠标滚轮并且操作窗格有焦点时发生。
公共事件 Move 在移动操作窗格时发生。
公共事件 OrientationChanged 当操作窗格的 Orientation 改变时发生。
公共事件 PaddingChanged 在操作窗格的填充发生改变时发生。
公共事件 Paint 在重绘操作窗格时发生。
公共事件 ParentChanged Parent 属性值更改时发生。
公共事件 PreviewKeyDown 在焦点位于此控件上的情况下,当有按键动作时发生(在 KeyDown 事件之前发生)。
公共事件 QueryAccessibilityHelp AccessibleObject 为辅助功能应用程序提供帮助时发生。
公共事件 QueryContinueDrag 在拖放操作期间发生,并且允许拖动源确定是否应取消拖放操作。
公共事件 RegionChanged Region 属性的值更改时发生。
公共事件 Resize 在重设操作窗格的大小时发生。
公共事件 RightToLeftChanged RightToLeft 属性值更改时发生。
公共事件 Scroll 用户或代码滚动工作区时发生。
公共事件 SizeChanged Size 属性值更改时发生。
公共事件 StyleChanged 当操作窗格的样式改变时发生。
公共事件 SystemColorsChanged 系统颜色更改时发生。
公共事件 TabIndexChanged TabIndex 属性值更改时发生。
公共事件 TabStopChanged TabStop 属性值更改时发生。
公共事件 TextChanged 基础结构。操作窗格不支持此事件。
公共事件 Validated 在完成对操作窗格的验证时发生。
公共事件 Validating 在验证操作窗格时发生。
公共事件 VisibleChanged Visible 属性值更改时发生。

页首

备注

Excel 或 Word 的每个文档级自定义项公开 ActionsPane 对象。可以使用此对象自定义文档级项目中任务窗格**“文档操作”**的用户界面。要获取 ActionsPane 对象,请在项目中使用 ThisDocument 类(对于 Word)或 ThisWorkbook 类(对于 Excel)的 ActionsPane 字段。有关更多信息,请参见操作窗格概述

每个 ActionsPane 对象扩展基础的提供可自定义用户接口的 Windows 窗体 UserControl。大多数 ActionsPane 的成员与基础 UserControl 的成员对应。使用以下 ActionsPane 成员访问操作窗格特定的功能:

  • Clear 方法。使用此方法将操作窗格与文档或工作簿分离开。

  • AutoRecover 属性。使用此属性阻止或允许最终用户将操作窗格与文档或工作簿分离。

  • Orientation 属性。使用此属性确定操作窗格是停靠在文档或工作薄的顶部或底部还是停靠在文档或工作簿的左侧或右侧。

  • StackOrder 属性。使用此属性指定在操作窗格上堆叠控件的方向。

  • OrientationChanged 事件。使用此属性确定操作窗格何时停靠到不同位置。

说明说明

此接口由 Visual Studio Tools for Office Runtime 实现。不应在代码中实现此接口。有关更多信息,请参见 Visual Studio Tools for Office Runtime 概述

用法

本文档介绍面向 .NET Framework 4 和 .NET Framework 4.5 的 Office 项目中所用此类型的版本。在面向 .NET Framework 3.5 的项目中,此类型可能具有不同的成员,因此本文档为此类型提供的代码示例可能并不适用。有关面向 .NET Framework 3.5 的项目中的此类型的文档,请参见 Visual Studio 2008 文档中的以下参考部分:https://go.microsoft.com/fwlink/?LinkId=160658

示例

下面的代码示例演示如何创建一个可以自动调整内容对齐方式的简单操作窗格。当用户在将操作窗格移到应用程序窗口的另一位置的过程中改变了操作窗格的方向时,或者当用户单击操作窗格中的某个 Button 控件时,Orientation 属性用于确定 StackOrder 属性的新值。若要运行此代码,请从 Excel 文档级项目的 ThisWorkbook_Startup 事件处理程序中调用 InitActionsPane 方法。

Private Sub InitActionsPane()
    With Globals.ThisWorkbook.ActionsPane
        .Clear()
        .Visible = True
        .AutoRecover = True
    End With

    AddHandler Globals.ThisWorkbook.ActionsPane.OrientationChanged, _
        AddressOf ActionsPane_OrientationChanged
    ResetStackOrder()

    ' Create the button that will update the stack order.
    Dim button1 As New Button()
    button1.Text = "Change stack order"
    AddHandler button1.Click, AddressOf button1_Click

    ' Create two more buttons that do nothing.
    Dim button2 As New Button()
    button2.Text = "Button 2"
    Dim button3 As New Button()
    button3.Text = "Button 3"

    Globals.ThisWorkbook.ActionsPane.Controls.AddRange(New Control() _
        {button1, button2, button3})
End Sub

' Switch the stack order according to the current orientation.
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)

    If Globals.ThisWorkbook.ActionsPane.Orientation = _
        Orientation.Horizontal Then

        If Globals.ThisWorkbook.ActionsPane.StackOrder = _
            Microsoft.Office.Tools.StackStyle.FromLeft Then
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromRight
        Else
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromLeft
        End If
    Else
        If Globals.ThisWorkbook.ActionsPane.StackOrder = _
            Microsoft.Office.Tools.StackStyle.FromTop Then
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromBottom
        Else
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromTop
        End If
    End If
End Sub

Private Sub ActionsPane_OrientationChanged(ByVal sender As Object, _
    ByVal e As EventArgs)
    ResetStackOrder()
End Sub

' Readjust the stack order so that it matches the current orientation.
Sub ResetStackOrder()
    If Globals.ThisWorkbook.ActionsPane.Orientation = _
        Orientation.Horizontal Then

        If (Globals.ThisWorkbook.ActionsPane.StackOrder = _
        Microsoft.Office.Tools.StackStyle.FromTop Or _
        Globals.ThisWorkbook.ActionsPane.StackOrder = _
        Microsoft.Office.Tools.StackStyle.FromBottom) Then
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromLeft
        End If
    End If

    If Globals.ThisWorkbook.ActionsPane.Orientation = _
        Orientation.Vertical Then

        If (Globals.ThisWorkbook.ActionsPane.StackOrder = _
        Microsoft.Office.Tools.StackStyle.FromLeft Or _
        Globals.ThisWorkbook.ActionsPane.StackOrder = _
        Microsoft.Office.Tools.StackStyle.FromRight) Then
            Globals.ThisWorkbook.ActionsPane.StackOrder = _
                Microsoft.Office.Tools.StackStyle.FromTop
        End If
    End If
End Sub
private void InitActionsPane()
{
    Globals.ThisWorkbook.ActionsPane.Clear();
    Globals.ThisWorkbook.ActionsPane.Visible = true;
    Globals.ThisWorkbook.ActionsPane.AutoRecover = true;
    Globals.ThisWorkbook.ActionsPane.OrientationChanged +=
        new EventHandler(ActionsPane_OrientationChanged);
    ResetStackOrder();

    // Create the button that will update the stack order.
    Button button1 = new Button();
    button1.Text = "Change stack order";
    button1.Click += new EventHandler(button1_Click);

    // Create two more buttons that do nothing.
    Button button2 = new Button();
    button2.Text = "Button 2";
    Button button3 = new Button();
    button3.Text = "Button 3";

    Globals.ThisWorkbook.ActionsPane.Controls.AddRange(
        new Control[] { button1, button2, button3 });
}

// Switch the stack order according to the current orientation.
void button1_Click(object sender, EventArgs e)
{
    if (Globals.ThisWorkbook.ActionsPane.Orientation == 
        Orientation.Horizontal)
    {
        if (Globals.ThisWorkbook.ActionsPane.StackOrder == 
            Microsoft.Office.Tools.StackStyle.FromLeft)
        {
            Globals.ThisWorkbook.ActionsPane.StackOrder =
                Microsoft.Office.Tools.StackStyle.FromRight;
        }
        else
        {
            Globals.ThisWorkbook.ActionsPane.StackOrder =
                Microsoft.Office.Tools.StackStyle.FromLeft;
        }
    }
    else
    {
        if (Globals.ThisWorkbook.ActionsPane.StackOrder ==
            Microsoft.Office.Tools.StackStyle.FromTop)
        {
            Globals.ThisWorkbook.ActionsPane.StackOrder =
                Microsoft.Office.Tools.StackStyle.FromBottom;
        }
        else
        {
            Globals.ThisWorkbook.ActionsPane.StackOrder =
                Microsoft.Office.Tools.StackStyle.FromTop;
        }
    }
}

void ActionsPane_OrientationChanged(object sender, EventArgs e)
{
    ResetStackOrder();
}

// Readjust the stack order so that it matches the current orientation.
void ResetStackOrder()
{
    if (Globals.ThisWorkbook.ActionsPane.Orientation == 
        Orientation.Horizontal &&
       (Globals.ThisWorkbook.ActionsPane.StackOrder == 
           Microsoft.Office.Tools.StackStyle.FromTop ||
        Globals.ThisWorkbook.ActionsPane.StackOrder ==
           Microsoft.Office.Tools.StackStyle.FromBottom))
    {
        Globals.ThisWorkbook.ActionsPane.StackOrder =
            Microsoft.Office.Tools.StackStyle.FromLeft;
    }

    if (Globals.ThisWorkbook.ActionsPane.Orientation == 
        Orientation.Vertical &&
       (Globals.ThisWorkbook.ActionsPane.StackOrder ==
           Microsoft.Office.Tools.StackStyle.FromLeft ||
        Globals.ThisWorkbook.ActionsPane.StackOrder ==
           Microsoft.Office.Tools.StackStyle.FromRight))
    {
        Globals.ThisWorkbook.ActionsPane.StackOrder =
            Microsoft.Office.Tools.StackStyle.FromTop;
    }
}

请参见

参考

Microsoft.Office.Tools 命名空间

其他资源

操作窗格概述