Lire en anglais

Partager via


StatusBarPanelAutoSize Énumération

Définition

Spécifie le comportement de StatusBarPanel sur un contrôle StatusBar lorsque le contrôle est redimensionné.

C#
public enum StatusBarPanelAutoSize
Héritage
StatusBarPanelAutoSize

Champs

Contents 3

La largeur de StatusBarPanel est déterminée par son contenu.

None 1

Le StatusBarPanel ne change pas de dimensions lorsque le contrôle StatusBar est redimensionné.

Spring 2

Le StatusBarPanel partage la quantité d'espace disponible sur StatusBar (l'espace qui n'est pas occupé par d'autres panneaux dont la propriété AutoSize a la valeur None ou Contents) avec d'autres panneaux dont la propriété AutoSize a la valeur Spring.

Exemples

L’exemple de code suivant montre comment utiliser l’énumération StatusBarPanelAutoSize et comment gérer l’événement PanelClick .

Pour exécuter l’exemple, collez le code suivant dans un formulaire. Appelez la InitializeStatusBarPanels méthode dans le constructeur ou Load la méthode de gestion des événements du formulaire.

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();
    }
}

Remarques

Cette énumération est utilisée par la StatusBarPanel.AutoSize propriété . La AutoSize propriété spécifie la façon dont un StatusBarPanel est automatiquement mis en place sur un StatusBar contrôle.

S’applique à

Produit Versions
.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