ToolBarButton Class


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Represents a Windows toolbar button. Although ToolStripButton replaces and extends the ToolBarButton control of previous versions, ToolBarButton is retained for both backward compatibility and future use if you choose.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)


Public Class ToolBarButton
	Inherits Component


Initializes a new instance of the ToolBarButton class.


Initializes a new instance of the ToolBarButton class and displays the assigned text on the button.


Gets a value indicating whether the component can raise an event.(Inherited from Component.)


Gets the IContainer that contains the Component.(Inherited from Component.)


Gets a value that indicates whether the Component is currently in design mode.(Inherited from Component.)


Gets or sets the menu to be displayed in the drop-down toolbar button.


Gets or sets a value indicating whether the button is enabled.


Gets the list of event handlers that are attached to this Component.(Inherited from Component.)


Gets or sets the index value of the image assigned to the button.


Gets or sets the name of the image assigned to the button.


The name of the button.


Gets the toolbar control that the toolbar button is assigned to.


Gets or sets a value indicating whether a toggle-style toolbar button is partially pushed.


Gets or sets a value indicating whether a toggle-style toolbar button is currently in the pushed state.


Gets the bounding rectangle for a toolbar button.


Gets or sets the ISite of the Component.(Inherited from Component.)


Gets or sets the style of the toolbar button.


Gets or sets the object that contains data about the toolbar button.


Gets or sets the text displayed on the toolbar button.


Gets or sets the text that appears as a ToolTip for the button.


Gets or sets a value indicating whether the toolbar button is visible.


Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.(Inherited from MarshalByRefObject.)


Releases all resources used by the Component.(Inherited from Component.)


This API supports the product infrastructure and is not intended to be used directly from your code. Releases the unmanaged resources used by the ToolBarButton and optionally releases the managed resources. (Overrides Component.Dispose(Boolean).)


Determines whether the specified object is equal to the current object.(Inherited from Object.)


Releases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection.(Inherited from Component.)


Serves as the default hash function. (Inherited from Object.)


Retrieves the current lifetime service object that controls the lifetime policy for this instance.(Inherited from MarshalByRefObject.)


Returns an object that represents a service provided by the Component or by its Container.(Inherited from Component.)


Gets the Type of the current instance.(Inherited from Object.)


Obtains a lifetime service object to control the lifetime policy for this instance.(Inherited from MarshalByRefObject.)


Creates a shallow copy of the current Object.(Inherited from Object.)


Creates a shallow copy of the current MarshalByRefObject object.(Inherited from MarshalByRefObject.)


This API supports the product infrastructure and is not intended to be used directly from your code. Returns a string that represents the ToolBarButton control.(Overrides Component.ToString().)


Occurs when the component is disposed by a call to the Dispose method. (Inherited from Component.)

ToolBarButton controls are parented by ToolBar controls. Common properties to set once the toolbar button has been created are Text and ImageIndex. Set the Text property of the button to display text beneath or to the right of the image. To assign images to the buttons by creating an ImageList, assigning it to the ImageList property of the toolbar; then assign the image index value to the ImageIndex property of the button.

To change the appearance of the toolbar buttons assigned to the toolbar, set the Appearance property of the parent toolbar control. The ToolBarAppearance.Flat appearance gives the buttons a flat appearance. As the mouse pointer moves over the buttons, their appearance changes to three-dimensional. Button separators appear as lines rather than spaces between the buttons when the buttons have a flat appearance. If the Appearance property is set to ToolBarAppearance.Normal, the buttons appear raised and three-dimensional, and the separators appear as a gap between the buttons.

You can assign a ContextMenu to a button if the Style property is set to ToolBarButtonStyle.DropDown. When the button is clicked, the assigned menu is displayed.

To create a collection of ToolBarButton controls to display on a ToolBar, add the buttons individually by using the Add method of the Buttons property. Alternatively, you can add several toolbar buttons using the AddRange method.

The following code example creates a ToolBar and three ToolBarButton controls. The toolbar buttons are assigned to the button collection, the collection is assigned to the toolbar, and the toolbar is added to the form. On the ButtonClick event of the toolbar, the Button property of the ToolBarButtonClickEventArgs is evaluated and the appropriate dialog box opened. This code requires that a Form, an OpenFileDialog, a SaveFileDialog, and a PrintDialog have all been created.

Public Sub InitializeMyToolBar()
    ' Create and initialize the ToolBar and ToolBarButton controls.
    Dim toolBar1 As New ToolBar()
    Dim toolBarButton1 As New ToolBarButton()
    Dim toolBarButton2 As New ToolBarButton()
    Dim toolBarButton3 As New ToolBarButton()

    ' Set the Text properties of the ToolBarButton controls.
    toolBarButton1.Text = "Open"
    toolBarButton2.Text = "Save"
    toolBarButton3.Text = "Print"

    ' Add the ToolBarButton controls to the ToolBar.

    ' Add the event-handler delegate.
    AddHandler toolBar1.ButtonClick, AddressOf Me.toolBar1_ButtonClick

    ' Add the ToolBar to the Form.
End Sub    

Private Sub toolBar1_ButtonClick(ByVal sender As Object, _
ByVal e As ToolBarButtonClickEventArgs)

    ' Evaluate the Button property to determine which button was clicked.
    Select Case toolBar1.Buttons.IndexOf(e.Button)
        Case 0
            ' Insert code to open the file.
        Case 1
            ' Insert code to save the file.
        Case 2
            ' Insert code to print the file.
    End Select
End Sub

.NET Framework
Available since 1.1

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top