Represents a panel added by an External Application or External Command into the Add-Ins tab.
Namespace:
Autodesk.Revit.UI
Assembly:
RevitAPIUI
(in RevitAPIUI.dll) Version: 2015.0.0.0 (2015.0.0.0)
Syntax
C# |
---|
|
Visual Basic |
---|
|
Visual C++ |
---|
|
Remarks
The Panel class provides read and write access to the RibbonItems contained in the panel. Use of this class is not supported in Revit Macros.
Examples
Copy
C#
public Result OnStartup(UIControlledApplication application)
{
// add new ribbon panel
RibbonPanel ribbonPanel = application.CreateRibbonPanel("NewRibbonPanel");
//Create a push button in the ribbon panel �NewRibbonPanel"
string assembly = @"D:\Sample\HelloWorld\bin\Debug\HelloWorld.dll";
PushButton pushButton = ribbonPanel.AddItem(new PushButtonData("Hello Button",
"Hello Button", assembly, "Hello.HelloButton")) as PushButton;
// create bitmap image for button
Uri uriImage = new Uri(@"D:\Sample\HelloWorld\bin\Debug\39-Globe_32x32.png");
BitmapImage largeImage = new BitmapImage(uriImage);
// assign bitmap to button
pushButton.LargeImage = largeImage;
// assign a small bitmap to button which is used if command
// is moved to Quick Access Toolbar
Uri uriSmallImage = new Uri(@"D:\Sample\HelloWorld\bin\Debug\39-Globe_16x16.png");
BitmapImage smallImage = new BitmapImage(uriSmallImage);
// assign small image to button
pushButton.Image = smallImage;
// add a vertical separator bar to the panel
ribbonPanel.AddSeparator();
// define 3 new buttons to be added as stacked buttons
PushButtonData buttonRed = new PushButtonData ("Hello Red", "Hello Red",
assembly, "Hello.HelloRed");
buttonRed.Image = new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Red.bmp"));
PushButtonData buttonBlue = new PushButtonData("Hello Blue", "Hello Blue",
assembly, "Hello.HelloBlue");
buttonBlue.Image = new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Blue.bmp"));
PushButtonData buttonGreen = new PushButtonData("Hello Green", "Hello Green",
assembly, "Hello.HelloGreen");
buttonGreen.Image =
new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Green.bmp"));
// add 3 stacked buttons to the panel
ribbonPanel.AddStackedItems(buttonRed, buttonBlue, buttonGreen);
// add a pull-down button to the panel
PulldownButton pulldownButton = ribbonPanel.AddItem(new PulldownButtonData("Hello",
"Hello 123")) as PulldownButton;
pulldownButton.LargeImage =
new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Hello.bmp"));
// add some menu items to the pull-down button and assign bitmaps to them
PushButton buttonOne = pulldownButton.AddPushButton(new PushButtonData("Hello One",
"Hello 123", assembly, "Hello.HelloOne"));
buttonOne.LargeImage =
new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\One.bmp"));
PushButton buttonTwo = pulldownButton.AddPushButton(new PushButtonData("Hello Two",
"Hello 123", assembly, "Hello.HelloTwo"));
buttonTwo.LargeImage =
new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Two.bmp"));
PushButton buttonThree = pulldownButton.AddPushButton(new PushButtonData("Hello Three",
"Hello 123", assembly, "Hello.HelloThree"));
buttonThree.LargeImage =
new BitmapImage(new Uri(@"D:\Sample\HelloWorld\bin\Debug\Three.bmp"));
return Result.Succeeded;
}
Copy
VB.NET
Public Function OnStartup(application As UIControlledApplication) As Autodesk.Revit.UI.Result Implements IExternalApplication.OnStartup
' add new ribbon panel
Dim ribbonPanel As RibbonPanel = application.CreateRibbonPanel("NewRibbonPanel")
'Create a push button in the ribbon panel �NewRibbonPanel"
Dim assembly As String = "D:\Sample\HelloWorld\bin\Debug\HelloWorld.dll"
Dim pushButton As PushButton = TryCast(ribbonPanel.AddItem(New PushButtonData("Hello Button", "Hello Button", assembly, "Hello.HelloButton")), PushButton)
' create bitmap image for button
Dim uriImage As New Uri("D:\Sample\HelloWorld\bin\Debug\39-Globe_32x32.png")
Dim largeImage As New BitmapImage(uriImage)
' assign bitmap to button
pushButton.LargeImage = largeImage
' assign a small bitmap to button which is used if command
' is moved to Quick Access Toolbar
Dim uriSmallImage As New Uri("D:\Sample\HelloWorld\bin\Debug\39-Globe_16x16.png")
Dim smallImage As New BitmapImage(uriSmallImage)
' assign small image to button
pushButton.Image = smallImage
' add a vertical separator bar to the panel
ribbonPanel.AddSeparator()
' define 3 new buttons to be added as stacked buttons
Dim buttonRed As New PushButtonData("Hello Red", "Hello Red", assembly, "Hello.HelloRed")
buttonRed.Image = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Red.bmp"))
Dim buttonBlue As New PushButtonData("Hello Blue", "Hello Blue", assembly, "Hello.HelloBlue")
buttonBlue.Image = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Blue.bmp"))
Dim buttonGreen As New PushButtonData("Hello Green", "Hello Green", assembly, "Hello.HelloGreen")
buttonGreen.Image = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Green.bmp"))
' add 3 stacked buttons to the panel
ribbonPanel.AddStackedItems(buttonRed, buttonBlue, buttonGreen)
' add a pull-down button to the panel
Dim pulldownButton As PulldownButton = TryCast(ribbonPanel.AddItem(New PulldownButtonData("Hello", "Hello 123")), PulldownButton)
pulldownButton.LargeImage = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Hello.bmp"))
' add some menu items to the pull-down button and assign bitmaps to them
Dim buttonOne As PushButton = pulldownButton.AddPushButton(New PushButtonData("Hello One", "Hello 123", assembly, "Hello.HelloOne"))
buttonOne.LargeImage = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\One.bmp"))
Dim buttonTwo As PushButton = pulldownButton.AddPushButton(New PushButtonData("Hello Two", "Hello 123", assembly, "Hello.HelloTwo"))
buttonTwo.LargeImage = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Two.bmp"))
Dim buttonThree As PushButton = pulldownButton.AddPushButton(New PushButtonData("Hello Three", "Hello 123", assembly, "Hello.HelloThree"))
buttonThree.LargeImage = New BitmapImage(New Uri("D:\Sample\HelloWorld\bin\Debug\Three.bmp"))
Return Result.Succeeded
End Function