Condividi tramite


AutoSizeMode Enumerazione

Definizione

Specifica il comportamento di un controllo quando viene abilitata la relativa proprietà AutoSize.

public enum class AutoSizeMode
public enum AutoSizeMode
type AutoSizeMode = 
Public Enum AutoSizeMode
Ereditarietà
AutoSizeMode

Campi

GrowAndShrink 0

Il controllo viene ingrandito o ridotto in base al contenuto. Non è possibile ridimensionare manualmente il controllo.

GrowOnly 1

Il controllo viene ingrandito in base al contenuto, ma non viene ridotto a una dimensione inferiore al valore della relativa proprietà Size. Il form può essere ridimensionato, ma non può essere ridotto a una dimensione tale da nascondere i controlli in esso contenuti.

Esempio

Nell'esempio di codice seguente viene illustrato un modulo creato usando il codice che viene ridimensionato automaticamente in base al relativo contenuto. Quando viene eseguito, il modulo visualizza un Labeloggetto , un TextBox oggetto per l'immissione di un URL e un Button oggetto per la visualizzazione di tale URL all'interno del Web browser predefinito dell'utente. Nell'esempio di codice viene utilizzato un oggetto FlowLayoutPanel per disporre i controlli contenuti uno dopo l'altro e imposta e AutoSizeMode AutoSize per aumentare e compattare per adattare il contenuto del relativo 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

Commenti

L'impostazione del valore GrowAndShrink produce lo stesso comportamento ottenuto per i controlli con la AutoSize proprietà abilitata, ma che non hanno

Proprietà AutoSizeMode. Le MinimumSize proprietà e MaximumSize vengono rispettate, ma il valore corrente della Size proprietà viene ignorato.

Si applica a

Vedi anche