Практическое руководство. Интерактивное использование свойства Spring в элементе управления StatusStrip

Для размещения элемента управления ToolStripStatusLabel в элементе StatusStrip можно использовать свойство Spring. Свойство Spring определяет, заполняет ли элемент управления ToolStripStatusLabel доступное пространство в элементе управления StatusStrip автоматически.

Пример

В примере кода ниже показано использование свойства Spring для размещения элемента управления ToolStripStatusLabel в элементе StatusStrip. Для переключения значения свойства Click обработчик событий Spring выполняет исключающую операцию ИЛИ (XOR).

Чтобы использовать этот пример, выполните компиляцию и запуск приложения, а затем щелкните Middle (Spring) в элементе управления StatusStrip для переключения значения свойства Spring.

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Drawing;
Imports System.Collections.Generic
Imports System.Windows.Forms
Imports System.Drawing
// This code example demonstrates using the Spring property
// to interactively center a ToolStripStatusLabel in a StatusStrip.
class Form4 : Form
{
    // Declare the ToolStripStatusLabel.
    ToolStripStatusLabel middleLabel;

    public Form4()
    {
        // Create a new StatusStrip control.
        StatusStrip ss = new StatusStrip();

        // Add the leftmost label.
        ss.Items.Add("Left");

        // Handle middle label separately -- action will occur
        // when the label is clicked.
        middleLabel = new ToolStripStatusLabel("Middle (Spring)");
        middleLabel.Click += new EventHandler(middleLabel_Click);
        ss.Items.Add(middleLabel);

        // Add the rightmost label
        ss.Items.Add("Right");

        // Add the StatusStrip control to the controls collection.
        this.Controls.Add(ss);
    }

    // This event hadler is invoked when the
    // middleLabel control is clicked. It toggles
    // the value of the Spring property.
    void middleLabel_Click(object sender, EventArgs e)
    {
        // Toggle the value of the Spring property.
        middleLabel.Spring ^= true;

        // Set the Text property according to the
        // value of the Spring property.
        middleLabel.Text =
            middleLabel.Spring ? "Middle (Spring - True)" : "Middle (Spring - False)";
    }
}
' This code example demonstrates using the Spring property 
' to interactively center a ToolStripStatusLabel in a StatusStrip.
Class Form4
    Inherits Form

   ' Declare the ToolStripStatusLabel.
   Private middleLabel As ToolStripStatusLabel
   
   
   Public Sub New()
      ' Create a new StatusStrip control.
      Dim ss As New StatusStrip()
      
      ' Add the leftmost label.
      ss.Items.Add("Left")
      
      ' Handle middle label separately -- action will occur
      ' when the label is clicked.
      middleLabel = New ToolStripStatusLabel("Middle (Spring)")
      AddHandler middleLabel.Click, AddressOf middleLabel_Click
      ss.Items.Add(middleLabel)
      
      ' Add the rightmost label
      ss.Items.Add("Right")
      
      ' Add the StatusStrip control to the controls collection.
      Me.Controls.Add(ss)
    End Sub
   
   ' This event hadler is invoked when the 
   ' middleLabel control is clicked. It toggles
   ' the value of the Spring property.
    Sub middleLabel_Click(ByVal sender As Object, ByVal e As EventArgs)

        ' Toggle the value of the Spring property.
        middleLabel.Spring = middleLabel.Spring Xor True

        ' Set the Text property according to the
        ' value of the Spring property. 
        middleLabel.Text = IIf(middleLabel.Spring, _
        "Middle (Spring - True)", "Middle (Spring - False)")
    End Sub
End Class

Компиляция кода

Для этого примера требуются:

  • ссылки на сборки System.Design, System.Drawing и System.Windows.Forms.

См. также