Form.AutoSize Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Změňte velikost formuláře podle nastavení .AutoSizeMode
public:
virtual property bool AutoSize { bool get(); void set(bool value); };
[System.ComponentModel.Browsable(true)]
public override bool AutoSize { get; set; }
[<System.ComponentModel.Browsable(true)>]
member this.AutoSize : bool with get, set
Public Overrides Property AutoSize As Boolean
Hodnota vlastnosti
true
pokud formulář automaticky změní velikost; false
pokud musí být ručně změněna.
- Atributy
Příklady
Následující příklad ukazuje formulář vytvořený pomocí kódu, který automaticky změní velikost podle jeho obsahu. Při spuštění se ve formuláři zobrazí adresa LabelURL TextBox a adresa Button URL pro zobrazení této adresy URL ve výchozím webovém prohlížeči uživatele. Příklad používá FlowLayoutPanel k rozložení obsažených ovládacích prvků jeden za druhým. Nastaví také AutoSize velikost a AutoSizeMode zmenšení tak, aby odpovídala obsahu jeho formy.
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
Poznámky
Slouží AutoSize k vynucení změny velikosti formuláře tak, aby odpovídal jeho obsahu.
Formulář automaticky nemění velikost návrháře formulářů sady Visual Studio bez ohledu na hodnoty a AutoSize AutoSizeMode vlastnosti. Formulář se správně změní v době běhu podle hodnot těchto dvou vlastností. Naproti tomu vlastní UserControl automaticky mění velikost sebe sama v době návrhu i v době běhu.
Při použití se respektují AutoSizeMinimumSize vlastnosti a MaximumSize vlastnosti, ale aktuální hodnota Size vlastnosti je ignorována. Použití AutoSize a AutoSizeMode také vykresluje AutoScroll vlastnost nadbytečné, protože neexistuje způsob, jak formulář zmenšit, aby se skryly jeho obsažené ovládací prvky z zobrazení.
Informace o tom, jak se formulář chová, najdete AutoSize true
v výčtuAutoSizeMode.