RibbonOfficeMenu Interface

Provides access to controls that you add to the Microsoft Office Menu.

Namespace:  Microsoft.Office.Tools.Ribbon
Assemblies:   Microsoft.Office.Tools.Common (in Microsoft.Office.Tools.Common.dll)
  Microsoft.Office.Tools.Common.v4.0.Utilities (in Microsoft.Office.Tools.Common.v4.0.Utilities.dll)

Syntax

'Declaration
<GuidAttribute("49cea6a9-3670-4ae0-9a36-9305e27f302b")> _
Public Interface RibbonOfficeMenu _
    Inherits RibbonComponent, IComponent, IDisposable
[GuidAttribute("49cea6a9-3670-4ae0-9a36-9305e27f302b")]
public interface RibbonOfficeMenu : RibbonComponent, 
    IComponent, IDisposable

The RibbonOfficeMenu type exposes the following members.

Properties

  Name Description
Public property Items Gets the Ribbon controls that you added to the Microsoft Office Menu.
Public property Name Gets or sets the name of this RibbonComponent. (Inherited from RibbonComponent.)
Public property Parent Gets a RibbonComponent that represents the parent of this RibbonComponent. (Inherited from RibbonComponent.)
Public property Ribbon Gets the top-level Ribbon object that contains the control hierarchy. (Inherited from RibbonComponent.)
Public property RibbonUI Infrastructure. Gets the IRibbonUI instance that is provided by the Microsoft Office application to the Ribbon extensibility code. (Inherited from RibbonComponent.)
Public property Site Gets or sets the ISite associated with the IComponent. (Inherited from IComponent.)
Public property Tag Gets or sets application-specific data that is associated with this RibbonComponent. (Inherited from RibbonComponent.)

Top

Methods

  Name Description
Public method Dispose Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. (Inherited from IDisposable.)
Public method PerformDynamicLayout Calls the Microsoft.Office.Core.IRibbonUI.InvalidateControl method of the parent control if the RibbonComponent has a dynamic parent, such as a dynamic menu, and layout is not suspended. (Inherited from RibbonComponent.)
Public method PerformLayout Calls Microsoft.Office.Core.IRibbonUI.InvalidateControl if the RibbonComponent has a parent and layout is not suspended. (Inherited from RibbonComponent.)
Public method ResumeLayout() Reverses the effect of the SuspendLayout method. (Inherited from RibbonComponent.)
Public method ResumeLayout(Boolean) Reverses the effect of the SuspendLayout method. (Inherited from RibbonComponent.)
Public method SuspendLayout Prevents the Microsoft Office application from refreshing the state of controls on the Ribbon. (Inherited from RibbonComponent.)

Top

Events

  Name Description
Public event Disposed Represents the method that handles the Disposed event of a component. (Inherited from IComponent.)

Top

Remarks

When you add a Ribbon (Visual Designer) item to your project, Visual Studio automatically assigns a new RibbonOfficeMenu object to the OfficeMenu property of the generated OfficeRibbon interface. Use this object to add new controls to the Microsoft Office Menu at run time, or to access controls that you added to the Microsoft Office Menu.

You can add controls at run time, but only before the Ribbon is loaded. Create an instance of the control, and then add the new control to the Items collection. For more information, see Ribbon Object Model Overview.

Note

This interface is implemented by the Visual Studio Tools for Office runtime. It is not intended to be implemented in your code. For more information, see Visual Studio Tools for Office Runtime Overview.

Usage

This documentation describes the version of this type that is used in Office projects that target the .NET Framework 4 and the .NET Framework 4.5. In projects that target the .NET Framework 3.5, this type might have different members and the code examples provided for this type might not work. For documentation about this type in projects that target the .NET Framework 3.5, see the following reference section in the Visual Studio 2008 documentation: https://go.microsoft.com/fwlink/?LinkId=160658.

Examples

The following example iterates through the custom controls on the Ribbon Office menu and displays their name. To run this code example, you must first perform the following steps:

  1. Add a Ribbon (Visual Designer) item to an Office project.

  2. Add a button to the Microsoft Office Button.

  3. Set the (Name) property of the button to myOfficeMenuButton.

  4. Set the PositionType property to AfterOfficeID under the Position property.

  5. Set the OfficeID property to FilePrintMenu under the Position property.

Private Sub ListOfficeRibbonCustomControls()
    System.Windows.Forms.MessageBox.Show( _
            "Listing all Office Menu custom controls...")
    For Each control As RibbonComponent In Globals.Ribbons.Ribbon1.OfficeMenu.Items
        System.Windows.Forms.MessageBox.Show("Control name: " + control.Name)
    Next 
End Sub
private void ListOfficeRibbonCustomControls()
{
    System.Windows.Forms.MessageBox.Show(
        "Listing all Office Menu custom controls...");
    foreach (RibbonComponent control in Globals.Ribbons.Ribbon1.OfficeMenu.Items)
    {
        System.Windows.Forms.MessageBox.Show("Control name: " + control.Name);
    }
}

See Also

Reference

Microsoft.Office.Tools.Ribbon Namespace

Other Resources

How to: Add Controls to the Backstage View

Ribbon Object Model Overview