Ler en inglés

Compartir por


StatusBarPanelAutoSize Enumeración

Definición

Especifica cómo se comporta un objeto StatusBarPanel situado en un control StatusBar cuando cambia el tamaño del control.

C#
public enum StatusBarPanelAutoSize
Herencia
StatusBarPanelAutoSize

Campos

Nombre Valor Description
Contents 3

El ancho del StatusBarPanel lo determina su contenido.

None 1

StatusBarPanel no cambia de tamaño cuando el control StatusBar cambia de tamaño.

Spring 2

StatusBarPanel comparte el espacio disponible en el StatusBar (espacio no utilizado por otros paneles cuya propiedad AutoSize esté establecida en None o Contents) con otros paneles cuya propiedad AutoSize esté establecida en Spring.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar la StatusBarPanelAutoSize enumeración y cómo controlar el PanelClick evento.

Para ejecutar el ejemplo, pegue el código siguiente en un formulario. Llame al InitializeStatusBarPanels método en el constructor del formulario o Load en el método de control de eventos.

C#

internal System.Windows.Forms.StatusBar statusBar1;

private void InitializeStatusBarPanels()
{

    // Create a StatusBar control.
    statusBar1 = new StatusBar();

    // Dock the status bar at the top of the form. 
    statusBar1.Dock = DockStyle.Top;

    // Set the SizingGrip property to false so the user cannot 
    // resize the status bar.
    statusBar1.SizingGrip = false;

    // Associate the event-handling method with the 
    // PanelClick event.
    statusBar1.PanelClick += 
        new StatusBarPanelClickEventHandler(statusBar1_PanelClick);

    // Create two StatusBarPanel objects to display in statusBar1.
    StatusBarPanel panel1 = new StatusBarPanel();
    StatusBarPanel panel2 = new StatusBarPanel();

    // Set the width of panel2 explicitly and set
    // panel1 to fill in the remaining space.
    panel2.Width = 80;
    panel1.AutoSize = StatusBarPanelAutoSize.Spring;

    // Set the text alignment within each panel.
    panel1.Alignment = HorizontalAlignment.Left;
    panel2.Alignment = HorizontalAlignment.Right;

    // Display the first panel without a border and the second
    // with a raised border.
    panel1.BorderStyle = StatusBarPanelBorderStyle.None;
    panel2.BorderStyle = StatusBarPanelBorderStyle.Raised;

    // Set the text of the panels. The panel1 object is reserved
    // for line numbers, while panel2 is set to the current time.
    panel1.Text = "Reserved for important information.";
    panel2.Text = System.DateTime.Now.ToShortTimeString();

    // Set a tooltip for panel2
    panel2.ToolTipText = "Click time to display seconds";

    // Display panels in statusBar1 and add them to the
    // status bar's StatusBarPanelCollection.
    statusBar1.ShowPanels = true;
    statusBar1.Panels.Add(panel1);
    statusBar1.Panels.Add(panel2);

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

// If the user clicks the status bar, check the text of the 
// StatusBarPanel.  If the text equals a short time string,
// change it to long time display.
private void statusBar1_PanelClick(object sender, 
    StatusBarPanelClickEventArgs e)
{
    if (e.StatusBarPanel.Text == 
        System.DateTime.Now.ToShortTimeString())
    {
        e.StatusBarPanel.Text = 
            System.DateTime.Now.ToLongTimeString();
    }
}

Comentarios

La propiedad utiliza StatusBarPanel.AutoSize esta enumeración. La AutoSize propiedad especifica cómo se ajusta automático un StatusBarPanel control en un StatusBar control .

Se aplica a

Produto Versións
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1