This documentation is archived and is not being maintained.

StatusBarPanel Class

Represents a panel in a StatusBar control. Although the StatusStrip control replaces and adds functionality to the StatusBar control of previous versions, StatusBar 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 StatusBarPanel _
	Inherits Component _
	Implements ISupportInitialize

The StatusBarPanel type exposes the following members.

Public methodStatusBarPanelInitializes a new instance of the StatusBarPanel class.

Public propertyAlignmentGets or sets the alignment of text and icons within the status bar panel.
Public propertyAutoSizeGets or sets a value indicating whether the status bar panel is automatically resized.
Public propertyBorderStyleGets or sets the border style of the status bar panel.
Protected propertyCanRaiseEventsGets a value indicating whether the component can raise an event. (Inherited from Component.)
Public propertyContainerGets the IContainer that contains the Component. (Inherited from Component.)
Protected propertyDesignModeGets a value that indicates whether the Component is currently in design mode. (Inherited from Component.)
Protected propertyEventsGets the list of event handlers that are attached to this Component. (Inherited from Component.)
Public propertyIconGets or sets the icon to display within the status bar panel.
Public propertyMinWidthGets or sets the minimum allowed width of the status bar panel within the StatusBar control.
Public propertyNameGets or sets the name to apply to the StatusBarPanel.
Public propertyParentGets the StatusBar control that hosts the status bar panel.
Public propertySiteGets or sets the ISite of the Component. (Inherited from Component.)
Public propertyStyleGets or sets the style of the status bar panel.
Public propertyTagGets or sets an object that contains data about the StatusBarPanel.
Public propertyTextGets or sets the text of the status bar panel.
Public propertyToolTipTextGets or sets ToolTip text associated with the status bar panel.
Public propertyWidthGets or sets the width of the status bar panel within the StatusBar control.

Public methodBeginInitBegins the initialization of a StatusBarPanel.
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public methodDisposeReleases all resources used by the Component. (Inherited from Component.)
Protected methodDispose(Boolean)Releases the unmanaged resources used by the StatusBarPanel and optionally releases the managed resources. (Overrides Component.Dispose(Boolean).)
Public methodEndInitEnds the initialization of a StatusBarPanel.
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeReleases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection. (Inherited from Component.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected methodGetServiceReturns an object that represents a service provided by the Component or by its Container. (Inherited from Component.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Protected methodMemberwiseClone(Boolean)Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Public methodToStringRetrieves a string that contains information about the panel. (Overrides Component.ToString.)

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

A StatusBarPanel represents an individual panel in the StatusBar.StatusBarPanelCollection of a StatusBar control. A StatusBarPanel can contain text and/or an icon that can be used to reflect the status of an application. Use the StatusBar.StatusBarPanelCollection, accessible through the StatusBar.Panels property of a StatusBar control, to retrieve, add, or remove an individual StatusBarPanel.

The StatusBarPanel provides properties that enable you to modify the display behavior of a panel within a StatusBar control. You can use the Icon property to display an icon within a panel. This property can be used to provide a graphical representation of state in an application. The Alignment property enables you to specify how text and/or an icon is aligned within the panel. To ensure that your panel is sized properly to fit the text of the panel, you can use the AutoSize property to automatically resize the panel to fit the text of the panel or to fill the remaining space within the StatusBar control. The MinWidth property enables you to specify a minimum width for the panel to ensure that it does not get smaller than the data it is intended to display.

The StatusBar control is typically used to display Help information or state information about your application. Often, it is important to display additional information about data that is presented in a panel. You can use the ToolTipText property to display information whenever the mouse pointer rests on a panel.

Although the StatusBar control is typically used to display textual information, you can also provide your own type of display to a StatusBarPanel. The Style property enables you to specify how the StatusBarPanel will be drawn. By default, the Style property is used to display the value of the Text property (and an icon, if specified in the Icon property). If the property is set to OwnerDraw, you can draw your own information into the panel. You can use this feature to draw a progress bar or an animated icon in the panel.

When you create an instance of the StatusBarPanel class, the read/write properties are set to initial values. For a list of these values, see the StatusBarPanel constructor.

The following code example creates a StatusBar control on a form and adds two StatusBarPanel objects. The first StatusBarPanel, named panel1, displays status text for an application. The second StatusBarPanel, named panel2, displays the current date and uses the ToolTipText property of the StatusBarPanel class to display the current time. The example uses the ShowPanels property to ensure that the panels are displayed instead of a standard panel, and it uses the Panels property to access the Add method of the StatusBar.StatusBarPanelCollection to add the panels to the StatusBar. The example also uses the AutoSize, BorderStyle, ToolTipText, and Text properties to initialize the StatusBarPanel objects. This example assumes that the method defined in the example is defined and called from the constructor of a Form.

Private Sub CreateMyStatusBar()
   ' Create a StatusBar control.
   Dim statusBar1 As New StatusBar()

   ' Create two StatusBarPanel objects to display in the StatusBar.
   Dim panel1 As New StatusBarPanel()
   Dim panel2 As New StatusBarPanel()

   ' Display the first panel with a sunken border style.
   panel1.BorderStyle = StatusBarPanelBorderStyle.Sunken

   ' Initialize the text of the panel.
   panel1.Text = "Ready..."

   ' Set the AutoSize property to use all remaining space on the StatusBar.
   panel1.AutoSize = StatusBarPanelAutoSize.Spring

   ' Display the second panel with a raised border style.
   panel2.BorderStyle = StatusBarPanelBorderStyle.Raised

   ' Create ToolTip text that displays the time the application was started.
   panel2.ToolTipText = "Started: " & System.DateTime.Now.ToShortTimeString()

   ' Set the text of the panel to the current date.
   panel2.Text = System.DateTime.Today.ToLongDateString()

   ' Set the AutoSize property to size the panel to the size of the contents.
   panel2.AutoSize = StatusBarPanelAutoSize.Contents

   ' Display panels in the StatusBar control.
   statusBar1.ShowPanels = True

   ' Add both panels to the StatusBarPanelCollection of the StatusBar.			

   ' Add the StatusBar to the form.
End Sub

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

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