AutoSizeMode Énumération

Définition

Spécifie comment un contrôle se comporte lorsque sa propriété AutoSize est activée.Specifies how a control will behave when its AutoSize property is enabled.

public enum class AutoSizeMode
public enum AutoSizeMode
type AutoSizeMode = 
Public Enum AutoSizeMode
Héritage
AutoSizeMode

Champs

GrowAndShrink 0

Le contrôle agrandit ou diminue sa taille pour s'adapter à son contenu.The control grows or shrinks to fit its contents. Le contrôle ne peut pas être redimensionné manuellement.The control cannot be resized manually.

GrowOnly 1

Le contrôle s'agrandit autant que nécessaire pour s'adapter à son contenu mais ne diminue pas en-dessous de la valeur de sa propriété Size.The control grows as much as necessary to fit its contents but does not shrink smaller than the value of its Size property. Le formulaire peut être redimensionné tant que sa taille lui permet d'afficher tous les contrôles qu'il contient.The form can be resized, but cannot be made so small that any of its contained controls are hidden.

Exemples

L’exemple de code suivant montre un formulaire créé à l’aide d’un code qui se redimensionne automatiquement pour s’adapter à son contenu.The following code example shows a form created using code that automatically resizes to fit its contents. Lorsqu’il est exécuté, le formulaire affiche Labelun, TextBox un pour la saisie d’une URL Button et un pour afficher cette URL dans le navigateur Web par défaut de l’utilisateur.When ran, the form will display a Label, a TextBox for entering a URL, and a Button for displaying that URL inside of the user's default Web browser. L’exemple de code utilise FlowLayoutPanel un pour disposer les contrôles contenus l’un après l’autre, et définit AutoSize le AutoSizeMode et l’agrandir et le réduire pour s’ajuster au contenu de son formulaire.The code example uses a FlowLayoutPanel to lay out the contained controls one after the other, and sets the AutoSize and AutoSizeMode to grow and shrink to fit the contents of its form.

private void Form1_Load(object sender, EventArgs e)
{
    this.AutoSize = true;
    this.AutoSizeMode = AutoSizeMode.GrowAndShrink;
    this.Text = "URL Opener";

    flowPanel = new FlowLayoutPanel();
    flowPanel.AutoSize = true;
    flowPanel.AutoSizeMode = AutoSizeMode.GrowAndShrink;
    this.Controls.Add(flowPanel);

    urlLabel = new Label();
    urlLabel.Name = "urlLabel";
    urlLabel.Text = "URL:";
    urlLabel.Width = 50;
    urlLabel.TextAlign = ContentAlignment.MiddleCenter;
    flowPanel.Controls.Add(urlLabel);

    urlTextBox = new TextBox();
    urlTextBox.Name = "urlTextBox";
    urlTextBox.Width = 250;
    flowPanel.Controls.Add(urlTextBox);

    urlButton = new Button();
    urlButton.Name = "urlButton";
    urlButton.Text = "Open URL in Browser";
    urlButton.Click += new EventHandler(urlButton_Click);
    flowPanel.Controls.Add(urlButton);
}

void urlButton_Click(object sender, EventArgs e)
{
    try
    {
        Uri newUri = new Uri(urlTextBox.Text);
    }
    catch (UriFormatException uriEx)
    {
        MessageBox.Show("Sorry, your URL is malformed. Try again. Error: " + uriEx.Message);
        urlTextBox.ForeColor = Color.Red;
        return;
    }
    
    // Valid URI. Reset any previous error color, and launch the URL in the 
    // default browser.
    // NOTE: Depending on the user's settings, this method of starting the
    // browser may use an existing window in an existing Web browser process.
    // To get around this, start up a specific browser instance instead using one of
    // the overloads for Process.Start. You can examine the registry to find the
    // current default browser and launch that, or hard-code a specific browser.
    urlTextBox.ForeColor = Color.Black;
    Process.Start(urlTextBox.Text);
}
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Me.AutoSize = True
    Me.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
    Me.Text = "URL Opener"

    flowPanel = New FlowLayoutPanel()
    flowPanel.AutoSize = True
    flowPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
    Me.Controls.Add(flowPanel)

    urlLabel = New Label()
    urlLabel.Name = "urlLabel"
    urlLabel.Text = "URL:"
    urlLabel.Width = 50
    urlLabel.TextAlign = ContentAlignment.MiddleCenter
    flowPanel.Controls.Add(urlLabel)

    urlTextBox = New TextBox()
    urlTextBox.Name = "urlTextBox"
    urlTextBox.Width = 250
    flowPanel.Controls.Add(urlTextBox)

    urlButton = New Button()
    urlButton.Name = "urlButton"
    urlButton.Text = "Open URL in Browser"
    flowPanel.Controls.Add(urlButton)
End Sub


Private Sub urlButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles urlButton.Click
    Try
        Dim newUri As New Uri(urlTextBox.Text)
    Catch uriEx As UriFormatException
        MessageBox.Show(("Sorry, your URL is malformed. Try again. Error: " + uriEx.Message))
        urlTextBox.ForeColor = Color.Red
        Return
    End Try

    ' Valid URI. Reset any previous error color, and launch the URL in the 
    ' default browser.
    ' NOTE: Depending on the user's settings, this method of starting the
    ' browser may use an existing window in an existing Web browser process.
    ' To get around this, start up a specific browser instance instead using one of
    ' the overloads for Process.Start. You can examine the registry to find the
    ' current default browser and launch that, or hard-code a specific browser.
    urlTextBox.ForeColor = Color.Black
    Process.Start(urlTextBox.Text)
End Sub

Remarques

La définition de la valeur GrowAndShrink produit le même comportement que celui obtenu pour les AutoSize contrôles dont la propriété est activée, mais qui n’ont pas deSetting the GrowAndShrink value produces the same behavior that you get for controls with the AutoSize property enabled but which have no

Propriété AutoSizeMode.AutoSizeMode property. Les MinimumSize propriétés MaximumSize et sont respectées, mais la valeur actuelle de Size la propriété est ignorée.The MinimumSize and MaximumSize properties are respected, but the current value of the Size property is ignored.

S’applique à

Voir aussi