Export (0) Print
Expand All

StatusBar.StatusBarPanelCollection Class

Represents the collection of panels in a StatusBar control.

System.Object
  System.Windows.Forms.StatusBar.StatusBarPanelCollection

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

[ListBindableAttribute(false)]
public class StatusBarPanelCollection : IList, 
	ICollection, IEnumerable

The StatusBar.StatusBarPanelCollection type exposes the following members.

  NameDescription
Public methodStatusBar.StatusBarPanelCollectionInitializes a new instance of the StatusBar.StatusBarPanelCollection class.
Top

  NameDescription
Public propertyCountGets the number of items in the collection.
Public propertyIsReadOnlyGets a value indicating whether this collection is read-only.
Public propertyItem[Int32]Gets or sets the StatusBarPanel at the specified index.
Public propertyItem[String]Gets an item with the specified key from the collection.
Top

  NameDescription
Public methodAdd(StatusBarPanel)Adds a StatusBarPanel to the collection.
Public methodAdd(String)Adds a StatusBarPanel with the specified text to the collection.
Public methodAddRangeAdds an array of StatusBarPanel objects to the collection.
Public methodClearRemoves all items from the collection.
Public methodContainsDetermines whether the specified panel is located within the collection.
Public methodContainsKeyDetermines whether the collection contains a StatusBarPanel with the specified key.
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetEnumeratorReturns an enumerator to use to iterate through the item collection.
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodIndexOfReturns the index within the collection of the specified panel.
Public methodIndexOfKeyReturns the index of the first occurrence of a StatusBarPanel with the specified key.
Public methodInsertInserts the specified StatusBarPanel into the collection at the specified index.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodRemoveRemoves the specified StatusBarPanel from the collection.
Public methodRemoveAtRemoves the StatusBarPanel located at the specified index within the collection.
Public methodRemoveByKeyRemoves the StatusBarPanel with the specified key from the collection.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Public Extension MethodAsParallelEnables parallelization of a query. (Defined by ParallelEnumerable.)
Public Extension MethodAsQueryableConverts an IEnumerable to an IQueryable. (Defined by Queryable.)
Public Extension MethodCast<TResult>Casts the elements of an IEnumerable to the specified type. (Defined by Enumerable.)
Public Extension MethodOfType<TResult>Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.)
Top

  NameDescription
Explicit interface implemetationPrivate methodICollection.CopyToInfrastructure. Copies the StatusBar.StatusBarPanelCollection to a compatible one-dimensional array, starting at the specified index of the target array.
Explicit interface implemetationPrivate propertyICollection.IsSynchronizedInfrastructure. Gets a value indicating whether access to the collection is synchronized (thread safe).
Explicit interface implemetationPrivate propertyICollection.SyncRootInfrastructure. Gets an object that can be used to synchronize access to the collection.
Explicit interface implemetationPrivate methodIList.AddInfrastructure. Adds a StatusBarPanel to the collection.
Explicit interface implemetationPrivate methodIList.ContainsInfrastructure. Determines whether the specified panel is located within the collection.
Explicit interface implemetationPrivate methodIList.IndexOfInfrastructure. Returns the index of the specified panel within the collection.
Explicit interface implemetationPrivate methodIList.InsertInfrastructure. Inserts the specified StatusBarPanel into the collection at the specified index.
Explicit interface implemetationPrivate propertyIList.IsFixedSizeInfrastructure. Gets a value indicating whether the collection has a fixed size.
Explicit interface implemetationPrivate propertyIList.ItemInfrastructure. Gets or sets the element at the specified index.
Explicit interface implemetationPrivate methodIList.RemoveInfrastructure. Removes the specified StatusBarPanel from the collection.
Top

The StatusBar.StatusBarPanelCollection class stores the panels displayed in the StatusBar. Each object in the collection is an instance of the StatusBarPanel class which defines the display characteristics and behaviors of a panel displayed in a StatusBar.

There are a number of ways to add panels to the collection. The Add method provides the ability to add a single panel to the collection. To add a number of panels to the collection, you create an array of StatusBarPanel objects and assign it to the AddRange method. If you want to insert a panel at a specific location within the collection, you can use the Insert method. To remove panels, you can use either the Remove method or the RemoveAt method if you know where the panel is located within the collection. The Clear method enables you to remove all panels from the collection instead of using the Remove method to remove a single panel at a time.

In addition to methods and properties for adding and removing panels, the StatusBar.StatusBarPanelCollection also provides methods to find panels within the collection. The Contains method enables you to determine whether a panel is a member of the collection. Once you know that the panel is located within the collection, you can use the IndexOf method to determine where the panel is located within the collection.

The following code example creates a StatusBar control on a form and adds two StatusBarPanel objects. One of the 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 and 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 void CreateMyStatusBar()
		{
			// Create a StatusBar control.
			StatusBar statusBar1 = new StatusBar();
			// Create two StatusBarPanel objects to display in the StatusBar.
			StatusBarPanel panel1 = new StatusBarPanel();
			StatusBarPanel panel2 = 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 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.			
			statusBar1.Panels.Add(panel1);
			statusBar1.Panels.Add(panel2);

			// Add the StatusBar to the form. 
			this.Controls.Add(statusBar1);
		}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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.
Show:
© 2014 Microsoft