Přehled vlastnosti AutoSize
Vlastnost AutoSize umožňuje ovládacímu prvku změnit jeho velikost v případě potřeby k dosažení hodnoty určené vlastností PreferredSize . Chování nastavení velikosti pro konkrétní ovládací prvky upravíte nastavením AutoSizeMode
vlastnosti.
Chování automatického nastavení
Vlastnost podporují AutoSize pouze některé ovládací prvky. Kromě toho některé ovládací prvky, které podporují AutoSize vlastnost, také podporují AutoSizeMode
vlastnost.
Vlastnost AutoSize vytváří poněkud odlišné chování v závislosti na konkrétním typu ovládacího prvku a hodnotě AutoSizeMode
vlastnosti, pokud vlastnost existuje. Následující tabulka popisuje chování, která jsou vždy pravdivá, a poskytuje stručný popis každého z nich:
Vždy pravdivé chování | Popis |
---|---|
Automatická velikost je funkce za běhu. | To znamená, že se nikdy nezvětší nebo zmenší ovládací prvek a pak nebude mít žádný další vliv. |
Pokud ovládací prvek změní velikost, hodnota jeho Location vlastnosti vždy zůstane konstantní. | Když obsah ovládacího prvku způsobí, že se zvětšuje, ovládací prvek se rozroste směrem doprava a dolů. Ovládací prvky se nezvětšují vlevo. |
A Dock vlastnosti jsou dodrženy, pokud AutoSize je true Anchor . |
Hodnota vlastnosti ovládacího prvku Location je upravena na správnou hodnotu. Poznámka: Ovládací Label prvek je výjimkou tohoto pravidla. Když nastavíte hodnotu ukotvit Label vlastnosti ovládacího prvku AutoSize na true , Label ovládací prvek nebude roztažen. |
Vlastnosti a MinimumSize vlastnosti ovládacího prvku MaximumSize jsou vždy dodrženy bez ohledu na hodnotu jeho AutoSize vlastnosti. | Vlastnosti MaximumSize a vlastnosti nejsou touto vlastností ovlivněnyAutoSize.MinimumSize |
Ve výchozím nastavení není nastavená minimální velikost. | To znamená, že pokud je ovládací prvek nastaven tak, aby se zmenšil AutoSize a nemá žádný obsah, hodnota jeho Size vlastnosti je 0,0. V tomto případě se ovládací prvek zmenší na bod a nebude snadno viditelný. |
Pokud ovládací prvek neimplementuje metodu GetPreferredSize , GetPreferredSize vrátí metoda poslední hodnotu přiřazenou Size vlastnosti. | To znamená, že nastavení AutoSize nebude true mít žádný vliv. |
Ovládací prvek v TableLayoutPanel buňce se vždy zmenší tak, aby se vešel do buňky, dokud nedosáhnete MinimumSize . | Tato velikost se vynucuje jako maximální velikost. To není případ, kdy je buňka součástí AutoSize řádku nebo sloupce. |
AutoSizeMode – vlastnost
Vlastnost AutoSizeMode
poskytuje jemněji odstupňovanou kontrolu nad výchozím AutoSize chováním. Vlastnost AutoSizeMode
určuje, jak se ovládací prvek velikostí jeho obsahu. Obsah může být například text Button ovládacího prvku nebo podřízených ovládacích prvků kontejneru.
Následující tabulka uvádí AutoSizeMode nastavení a popis chování jednotlivých nastavení.
Nastavení AutoSizeMode | Chování |
---|---|
GrowAndShrink | Ovládací prvek se zvětší nebo zmenší tak, aby zahrnoval jeho obsah. Hodnoty MinimumSize a MaximumSize hodnoty jsou dodrženy, ale aktuální hodnota Size vlastnosti je ignorována. Toto chování je stejné jako u ovládacích prvků s AutoSize vlastností a bez AutoSizeMode vlastnosti. |
GrowOnly | Ovládací prvek roste tak, jak je potřeba, aby zahrnoval jeho obsah, ale nezmenší menší než hodnota určená jeho Size vlastností. Toto je výchozí hodnota pro AutoSizeMode . |
Ovládací prvky, které podporují vlastnost AutoSize
Následující tabulka obsahuje seznam ovládacích prvků, které podporují vlastnosti AutoSize a AutoSizeMode
vlastnosti.
Podpora automatického nastavení | Typ ovládacího prvku |
---|---|
- AutoSize podporovaná vlastnost. - Žádná AutoSizeMode nemovitost. |
CheckBox DomainUpDown Label LinkLabel MaskedTextBox (TextBox základ) NumericUpDown RadioButton TextBox TrackBar |
- AutoSize podporovaná vlastnost. - AutoSizeMode podporovaná vlastnost. |
Button CheckedListBox FlowLayoutPanel Form GroupBox Panel TableLayoutPanel |
- Žádná AutoSize nemovitost. | CheckedListBox ComboBox DataGridView DateTimePicker ListBox ListView MaskedTextBox MonthCalendar ProgressBar PropertyGrid RichTextBox SplitContainer TabControl TabPage TreeView WebBrowser ScrollBar |
Automatické nastavení v návrhovém prostředí
Následující tabulka popisuje chování nastavení velikosti ovládacího prvku v době návrhu na základě hodnoty jeho AutoSize a AutoSizeMode
vlastností.
SelectionRules Přepište vlastnost, aby bylo možné určit, zda je daný ovládací prvek ve stavu umožňujícím změnu velikosti uživatele. V následující tabulce "nemůže" pouze "Moveablecan" znamená "can" a MoveableAllSizeable .
Nastavení automatického nastavení | Gesto změny velikosti návrhu |
---|---|
- AutoSize = true - Žádná AutoSizeMode nemovitost. |
Uživatel nemůže změnit velikost ovládacího prvku v době návrhu, s výjimkou následujících ovládacích prvků: - TextBox - MaskedTextBox - RichTextBox - TrackBar |
- AutoSize = true - AutoSizeMode = GrowAndShrink |
Uživatel nemůže změnit velikost ovládacího prvku v době návrhu. |
- AutoSize = true - AutoSizeMode = GrowOnly |
Uživatel může změnit velikost ovládacího prvku v době návrhu. Size Při nastavení vlastnosti může uživatel zvětšit pouze velikost ovládacího prvku. |
- AutoSize = false nebo AutoSize vlastnost je skrytá. |
Uživatel může změnit velikost ovládacího prvku v době návrhu. |
Poznámka:
Aby se maximalizovala produktivita, návrhář model Windows Forms v sadě Visual Studio stínuje AutoSize vlastnost třídyForm. V době návrhu se formulář chová, jako by AutoSize vlastnost je nastavena false
, bez ohledu na jeho skutečné nastavení. Za běhu není provedeno žádné zvláštní ubytování a AutoSize vlastnost se použije podle nastavení vlastnosti.
Viz také
.NET Desktop feedback