AutoSizeMode Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, jak kontrolka będzie zachowywać się po włączeniu jej AutoSize właściwości.
public enum class AutoSizeMode
public enum AutoSizeMode
type AutoSizeMode =
Public Enum AutoSizeMode
- Dziedziczenie
Pola
GrowAndShrink | 0 | Kontrolka rośnie lub zmniejsza się, aby dopasować jej zawartość. Nie można ręcznie zmienić rozmiaru kontrolki. |
GrowOnly | 1 | Kontrolka rośnie tak samo, jak to konieczne, aby dopasować jej zawartość, ale nie zmniejsza się niż wartość jej Size właściwości. Rozmiar formularza można zmienić, ale nie można go zmienić tak małego, że żaden z zawartych w nim kontrolek jest ukryty. |
Przykłady
Poniższy przykład kodu przedstawia formularz utworzony przy użyciu kodu, który automatycznie zmienia rozmiar w celu dopasowania do jego zawartości. Po uruchomieniu w formularzu zostanie wyświetlony Labelelement , a TextBox do wprowadzania adresu URL oraz do Button wyświetlania tego adresu URL w domyślnej przeglądarce sieci Web użytkownika. W przykładzie kodu użyto elementu , FlowLayoutPanel aby ułożyć zawarte kontrolki jeden po drugim i ustawić AutoSize i AutoSizeMode zwiększyć i zmniejszyć, aby dopasować zawartość jego formularza.
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
Uwagi
Ustawienie wartości GrowAndShrink powoduje takie samo zachowanie, jak w przypadku kontrolek z włączoną AutoSize właściwością, ale które nie mają
AutoSizeMode
Właściwość. Właściwości MinimumSize i MaximumSize są przestrzegane, ale bieżąca wartość Size właściwości jest ignorowana.