StatusBar.StatusBarPanelCollection Class

Definition

Represents the collection of panels in a StatusBar control.

public: ref class StatusBar::StatusBarPanelCollection : System::Collections::IList
public class StatusBar.StatusBarPanelCollection : System.Collections.IList
[System.ComponentModel.ListBindable(false)]
public class StatusBar.StatusBarPanelCollection : System.Collections.IList
type StatusBar.StatusBarPanelCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
[<System.ComponentModel.ListBindable(false)>]
type StatusBar.StatusBarPanelCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public Class StatusBar.StatusBarPanelCollection
Implements IList
Inheritance
StatusBar.StatusBarPanelCollection
Attributes
Implements

Examples

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 = gcnew StatusBar;

      // Create two StatusBarPanel objects to display in the StatusBar.
      StatusBarPanel^ panel1 = gcnew StatusBarPanel;
      StatusBarPanel^ panel2 = gcnew 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 = System::DateTime::Now.ToShortTimeString();

      // Set the text of the panel to the current date.
      panel2->Text = "Started: " + 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 );
   }
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);
}
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.			
   statusBar1.Panels.Add(panel1)
   statusBar1.Panels.Add(panel2)

   ' Add the StatusBar to the form.
   Me.Controls.Add(statusBar1)
End Sub

Remarks

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.

Constructors

StatusBar.StatusBarPanelCollection(StatusBar)

Initializes a new instance of the StatusBar.StatusBarPanelCollection class.

Properties

Count

Gets the number of items in the collection.

IsReadOnly

Gets a value indicating whether this collection is read-only.

Item[Int32]

Gets or sets the StatusBarPanel at the specified index.

Item[String]

Gets an item with the specified key from the collection.

Methods

Add(StatusBarPanel)

Adds a StatusBarPanel to the collection.

Add(String)

Adds a StatusBarPanel with the specified text to the collection.

AddRange(StatusBarPanel[])

Adds an array of StatusBarPanel objects to the collection.

Clear()

Removes all items from the collection.

Contains(StatusBarPanel)

Determines whether the specified panel is located within the collection.

ContainsKey(String)

Determines whether the collection contains a StatusBarPanel with the specified key.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator()

Returns an enumerator to use to iterate through the item collection.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
IndexOf(StatusBarPanel)

Returns the index within the collection of the specified panel.

IndexOfKey(String)

Returns the index of the first occurrence of a StatusBarPanel with the specified key.

Insert(Int32, StatusBarPanel)

Inserts the specified StatusBarPanel into the collection at the specified index.

MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(StatusBarPanel)

Removes the specified StatusBarPanel from the collection.

RemoveAt(Int32)

Removes the StatusBarPanel located at the specified index within the collection.

RemoveByKey(String)

Removes the StatusBarPanel with the specified key from the collection.

ToString()

Returns a string that represents the current object.

(Inherited from Object)

Explicit Interface Implementations

ICollection.CopyTo(Array, Int32)

Copies the StatusBar.StatusBarPanelCollection to a compatible one-dimensional array, starting at the specified index of the target array.

ICollection.IsSynchronized

Gets a value indicating whether access to the collection is synchronized (thread safe).

ICollection.SyncRoot

Gets an object that can be used to synchronize access to the collection.

IList.Add(Object)

This API supports the product infrastructure and is not intended to be used directly from your code.

Adds a StatusBarPanel to the collection.

IList.Contains(Object)

Determines whether the specified panel is located within the collection.

IList.IndexOf(Object)

Returns the index of the specified panel within the collection.

IList.Insert(Int32, Object)

Inserts the specified StatusBarPanel into the collection at the specified index.

IList.IsFixedSize

Gets a value indicating whether the collection has a fixed size.

IList.Item[Int32]

Gets or sets the element at the specified index.

IList.Remove(Object)

Removes the specified StatusBarPanel from the collection.

Extension Methods

Cast<TResult>(IEnumerable)

Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Enables parallelization of a query.

AsQueryable(IEnumerable)

Converts an IEnumerable to an IQueryable.

Applies to

See also