Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
Previous Versions
.NET Framework 2.0
Collapse All/Expand All Collapse All
This page is specific to
Microsoft Visual Studio 2005/.NET Framework 2.0

Other versions are also available for the following:
.NET Framework Class Library
ToolStripStatusLabel Class

Note: This class is new in the .NET Framework version 2.0.

Represents a panel in a StatusStrip control.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Visual Basic (Declaration)
Public Class ToolStripStatusLabel
    Inherits ToolStripLabel
Visual Basic (Usage)
Dim instance As ToolStripStatusLabel
C#
public class ToolStripStatusLabel : ToolStripLabel
C++
public ref class ToolStripStatusLabel : public ToolStripLabel
J#
public class ToolStripStatusLabel extends ToolStripLabel
JScript
public class ToolStripStatusLabel extends ToolStripLabel

A ToolStripStatusLabel represents an individual panel of a StatusStrip control. A ToolStripStatusLabel can contain text or an icon that reflects the status of an application. Use the ToolStripItemCollection class to find, add, or remove ToolStripStatusLabel objects.

Although ToolStripStatusLabel replaces and adds functionality to the StatusBarPanel control of previous versions, StatusBarPanel is retained for both backward compatibility and future use if you choose.

The following code example demonstrates a ToolStripStatusLabel with various common properties set.

Visual Basic
Imports System
Imports System.Text
Imports System.Windows.Forms

Public Class Form1
   Inherits Form
   Private statusStrip1 As StatusStrip
   Private toolStripStatusLabel1 As ToolStripStatusLabel
   
   Public Sub New()
      InitializeComponent()
   End Sub
   
   <STAThread()>  _
   Shared Sub Main()
      Application.EnableVisualStyles()
      Application.Run(New Form1())
   End Sub
   
   Private Sub InitializeComponent()
      statusStrip1 = New System.Windows.Forms.StatusStrip()
      toolStripStatusLabel1 = New System.Windows.Forms.ToolStripStatusLabel()
      statusStrip1.SuspendLayout()
      SuspendLayout()
      ' 
      ' statusStrip1
      ' 
      statusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {toolStripStatusLabel1})
      statusStrip1.Location = New System.Drawing.Point(0, 248)
      statusStrip1.Name = "statusStrip1"
      statusStrip1.Size = New System.Drawing.Size(292, 25)
      statusStrip1.TabIndex = 0
      statusStrip1.Text = "statusStrip1"
      
      ' 
      ' 
      toolStripStatusLabel1.BorderSides = CType(System.Windows.Forms.ToolStripStatusLabelBorderSides.Left Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Top Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Right Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom, System.Windows.Forms.ToolStripStatusLabelBorderSides)
      toolStripStatusLabel1.BorderStyle = System.Windows.Forms.Border3DStyle.Raised
      toolStripStatusLabel1.IsLink = True
      toolStripStatusLabel1.Name = "toolStripStatusLabel1"
      toolStripStatusLabel1.Size = New System.Drawing.Size(246, 20)
      toolStripStatusLabel1.Spring = True
      toolStripStatusLabel1.Text = "toolStripStatusLabel1"
      toolStripStatusLabel1.Alignment = ToolStripItemAlignment.Left
      ' Form1
      ' 
      ClientSize = New System.Drawing.Size(292, 273)
      Controls.Add(statusStrip1)
      Name = "Form1"
      statusStrip1.ResumeLayout(False)
      statusStrip1.PerformLayout()
      ResumeLayout(False)
      PerformLayout()
   End Sub
End Class
C#
using System;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication5
{
    public class Form1 : Form
    {
        private StatusStrip statusStrip1;
        private ToolStripStatusLabel toolStripStatusLabel1;
    
        public Form1()
        {
            InitializeComponent();
        }
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.Run(new Form1());
        }

        private void InitializeComponent()
        {
            statusStrip1 = new System.Windows.Forms.StatusStrip();
            toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
            statusStrip1.SuspendLayout();
            SuspendLayout();
            // 
            // statusStrip1
            // 
            statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
            toolStripStatusLabel1});
            statusStrip1.Location = new System.Drawing.Point(0, 248);
            statusStrip1.Name = "statusStrip1";
            statusStrip1.Size = new System.Drawing.Size(292, 25);
            statusStrip1.TabIndex = 0;
            statusStrip1.Text = "statusStrip1";
            
            // 
            // 
            toolStripStatusLabel1.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Top)
                        | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right)
                        | System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom)));
            toolStripStatusLabel1.BorderStyle = System.Windows.Forms.Border3DStyle.Raised;
            toolStripStatusLabel1.IsLink = true;
            toolStripStatusLabel1.Name = "toolStripStatusLabel1";
            toolStripStatusLabel1.Size = new System.Drawing.Size(246, 20);
            toolStripStatusLabel1.Spring = true;
            toolStripStatusLabel1.Text = "toolStripStatusLabel1";
            toolStripStatusLabel1.Alignment = ToolStripItemAlignment.Left;
            // Form1
            // 
            ClientSize = new System.Drawing.Size(292, 273);
            Controls.Add(statusStrip1);
            Name = "Form1";
            statusStrip1.ResumeLayout(false);
            statusStrip1.PerformLayout();
            ResumeLayout(false);
            PerformLayout();

        }
    }
}
System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Windows.Forms.ToolStripItem
         System.Windows.Forms.ToolStripLabel
          System.Windows.Forms.ToolStripStatusLabel
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

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

.NET Framework

Supported in: 2.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
ToolStripStatusLabel Paint event does not fire.      craig_hessel   |   Edit   |   Show History
VB.Net 2.0/Windows XP Professional. I think I found bug in ToolStripStatusLabel. With StatusStrip holding just one ToolStripStatusLabel, Spring=True, and label text wider than window, the text display is truncated as expected. When I minimize window then restore it to normal, the status text display disappears. The label Paint event does not fire. If I manually widen window wider than the status text, the Paint event fires and text reappears. Is there workaround to fix this problem? Do I need to give more to reproduce issue? Also the MSDN help here has an Alignment property that does not show up for me. I have Visual Studio 2005 Professional v8.0.50727.762 (SP.050727-7600) and Net Framework 2.0.50727 SP1. Yes! Found workaround. In the form SizeChanged and/or LocationChanged events, blank the status text in the label, then restore it. Did not even need Refresh, Sleep, etc.
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement | Site Feedback
Page view tracker