CreateRibbonTab Method


Creates a new tab on the Revit user interface.

Namespace: Autodesk.Revit.UI
Assembly: RevitAPIUI (in RevitAPIUI.dll) Version: 2015.0.0.0 (2015.0.0.0)

Syntax

C#
public virtual void CreateRibbonTab(
	string tabName
)
Visual Basic
Public Overridable Sub CreateRibbonTab ( _
	tabName As String _
)
Visual C++
public:
virtual void CreateRibbonTab(
	String^ tabName
)

Parameters

tabName
Type: System String
The name of the tab to be created.

Remarks

This method will create a custom tab at the end of the list of static tabs. If multiple tabs are added, they will be shown in the order added. This method is not supported in Macros.

Examples

Copy C#
public Result OnStartup(UIControlledApplication application)
{
    // Create a custom ribbon tab
    String tabName = "This Tab Name";
    application.CreateRibbonTab(tabName);

    // Create two push buttons
    PushButtonData button1 = new PushButtonData("Button1", "My Button #1",
        @"C:\ExternalCommands.dll", "Revit.Test.Command1");
    PushButtonData button2 = new PushButtonData("Button2", "My Button #2",
        @"C:\ExternalCommands.dll", "Revit.Test.Command2");

    // Create a ribbon panel
    RibbonPanel m_projectPanel = application.CreateRibbonPanel(tabName, "This Panel Name"); 

    // Add the buttons to the panel
    List<RibbonItem> projectButtons = new List<RibbonItem>();
    projectButtons.AddRange(m_projectPanel.AddStackedItems(button1, button2));

    return Result.Succeeded;
}
Copy VB.NET
Public Function OnStartup(application As UIControlledApplication) As Autodesk.Revit.UI.Result Implements IExternalApplication.OnStartup
    ' Create a custom ribbon tab
    Dim tabName As [String] = "This Tab Name"
    application.CreateRibbonTab(tabName)

    ' Create two push buttons
    Dim button1 As New PushButtonData("Button1", "My Button #1", "C:\ExternalCommands.dll", "Revit.Test.Command1")
    Dim button2 As New PushButtonData("Button2", "My Button #2", "C:\ExternalCommands.dll", "Revit.Test.Command2")

    ' Create a ribbon panel
    Dim m_projectPanel As RibbonPanel = application.CreateRibbonPanel(tabName, "This Panel Name")

    ' Add the buttons to the panel
    Dim projectButtons As New List(Of RibbonItem)()
    projectButtons.AddRange(m_projectPanel.AddStackedItems(button1, button2))

    Return Result.Succeeded
End Function

Exceptions

Exception Condition
Autodesk.Revit.Exceptions ArgumentNullException tabName or panelName is a null reference ( Nothing in Visual Basic) .
Autodesk.Revit.Exceptions ArgumentException tabName or panelName is Empty or the tab name duplicates the name of another tab in the Revit UI.
Autodesk.Revit.Exceptions InvalidOperationException Too many custom tabs have been created in this session. (Maximum is 20).

See Also