Przewodnik: ustawianie kontrolek z dopełnieniem, marginesami i właściwością AutoSize
Precyzyjne umieszczanie kontrolek w formularzu jest wysokim priorytetem dla wielu aplikacji. Zestaw Windows Forms Projektant w programie Visual Studio udostępnia wiele narzędzi do tworzenia układu. Trzy najważniejsze są Marginwłaściwości , Paddingi AutoSize , które znajdują się we wszystkich kontrolkach Windows Forms.
Właściwość Margin definiuje przestrzeń wokół kontrolki, która utrzymuje inne kontrolki w określonej odległości od obramowań kontrolki.
Właściwość Padding definiuje przestrzeń w środku kontrolki, która przechowuje zawartość kontrolki (na przykład wartość jej Text właściwości) określoną odległość od obramowań kontrolki.
Poniższa ilustracja przedstawia Padding właściwości i Margin w kontrolce.
Właściwość AutoSize nakazuje kontrolce automatyczne ustawianie rozmiaru zawartości. Zmiana rozmiaru nie będzie mniejsza niż wartość oryginalnej Size właściwości i będzie uwzględniać wartość jej Padding właściwości.
Wymagania wstępne
Aby ukończyć ten przewodnik, potrzebny będzie program Visual Studio.
Tworzenie projektu
W programie Visual Studio utwórz projekt aplikacji systemu Windows o nazwie
LayoutExample
.Wybierz formularz w Projektant formularzy systemu Windows.
Ustawianie marginesów dla kontrolek
Możesz ustawić domyślną odległość między kontrolkami przy użyciu Margin właściwości . Po przeniesieniu kontrolki wystarczająco blisko do innej kontrolki zobaczysz linię przyciągania, która pokazuje marginesy dla dwóch kontrolek. Przesuwana kontrolka będzie również przyciągać do odległości zdefiniowanej przez marginesy.
Rozmieszczanie kontrolek w formularzu przy użyciu właściwości Margin
Przeciągnij dwie Button kontrolki z przybornika na formularz.
Wybierz jedną z Button kontrolek i przenieś ją blisko drugiego, aż do momentu, gdy prawie się dotknie.
Zwróć uwagę na linię przyciągania, która pojawia się między nimi. Ta odległość jest sumą dwóch wartości kontrolek Margin . Kontrolka, którą przenosisz, przyciąga do tej odległości. Aby uzyskać szczegółowe informacje, zobacz Przewodnik: rozmieszczanie kontrolek w formularzach systemu Windows przy użyciu linii przyciągania.
Margin Zmień właściwość jednej z kontrolek, rozwijając wpis w oknie Właściwości i ustawiając MarginAll właściwość na 20.
Wybierz jedną z Button kontrolek i przenieś ją blisko drugiego.
Linia przyciągania definiująca sumę wartości marginesu jest dłuższa i że kontrolka przyciąga do większej odległości od innej kontrolki.
Margin Zmień właściwość wybranej kontrolki, rozwijając wpis w oknie Właściwości i ustawiając MarginTop właściwość na 5.
Przenieś wybraną kontrolkę poniżej innego formantu i sprawdź, czy linia przyciągania jest krótsza. Przenieś wybraną kontrolkę z lewej strony drugiej kontrolki i zwróć uwagę, że linia przyciągania zachowuje wartość obserwowaną w kroku 4.
Można ustawić wszystkie aspekty Margin właściwości , Left, TopRight, Bottom, na różne wartości lub ustawić je wszystkie na tę samą wartość za pomocą All właściwości .
Ustawianie dopełnienia kontrolek
Aby uzyskać dokładny układ wymagany dla aplikacji, kontrolki będą często zawierać kontrolki podrzędne. Jeśli chcesz określić bliskość obramowania kontrolki podrzędnej do obramowania kontrolki nadrzędnej, użyj właściwości kontrolki Padding nadrzędnej w połączeniu z właściwością kontrolki podrzędnej Margin . Właściwość Padding jest również używana do kontrolowania zbliżenia zawartości kontrolki (na przykład Button właściwości kontrolki Text ) do jej obramowań.
Rozmieszczanie kontrolek w formularzu przy użyciu dopełnienia
Przeciągnij kontrolkę Button z przybornika na formularz.
Zmień wartość Button właściwości kontrolki AutoSize na true.
Padding Zmień właściwość, rozwijając wpis w oknie Właściwości i ustawiając PaddingAll właściwość na 5.
Kontrolka rozszerza się, aby zapewnić miejsce na nowe dopełnienie.
Przeciągnij kontrolkę GroupBox z przybornika na formularz. Przeciągnij kontrolkę Button z przybornika do kontrolki GroupBox . Umieść kontrolkę, Button aby była opróżniona z prawym dolnym rogu kontrolki GroupBox .
Obserwuj linie przyciągania, które są wyświetlane, gdy kontrolka Button zbliża się do dolnej i prawej krawędzi kontrolki GroupBox . Te linie przyciągania odpowiadają Margin właściwości .Button
GroupBox Zmień właściwość kontrolkiPadding, rozwijając wpis w oknie Właściwości i ustawiając PaddingAll właściwość na 20.
Wybierz kontrolkę Button w kontrolce GroupBox i przenieś ją w kierunku środka obiektu GroupBox.
Linie przyciągania pojawiają się w większej odległości od granic GroupBox kontroli. Ta odległość jest sumą Button właściwości kontrolki Margin i GroupBox właściwości kontrolki Padding .
Kontrolki rozmiaru są automatycznie
W niektórych aplikacjach rozmiar kontrolki nie będzie taki sam w czasie wykonywania, jak w czasie projektowania. Tekst kontrolki Button , na przykład, może zostać pobrany z bazy danych, a jego długość nie jest znana z wyprzedzeniem.
Gdy właściwość jest ustawiona AutoSize na true
, kontrolka będzie mieć rozmiar sam w jego zawartości. Aby uzyskać więcej informacji, zobacz AutoSize Property Overview (Omówienie właściwości AutoSize).
Rozmieszczanie kontrolek w formularzu przy użyciu właściwości AutoSize
Przeciągnij kontrolkę Button z przybornika na formularz.
Zmień wartość Button właściwości kontrolki AutoSize na true.
Button Zmień właściwość kontrolki Text na Ten przycisk ma długi ciąg dla właściwości Text.
Po zatwierdzeniu zmiany kontrolka Button zmienia rozmiar, aby dopasować go do nowego tekstu.
Przeciągnij kolejną Button kontrolkę z Przybornika na formularz.
Button Zmień właściwość kontrolki Text na "Ten przycisk ma długi ciąg dla właściwości Text".
Po zatwierdzeniu zmiany kontrolka Button nie zmienia jej rozmiaru, a tekst zostanie obcięty przez prawą krawędź kontrolki.
Padding Zmień właściwość, rozwijając wpis w oknie Właściwości i ustawiając PaddingAll właściwość na 5.
Tekst w środku kontrolki jest przycięty na wszystkich czterech stronach.
Button Zmień właściwość kontrolki AutoSize na true.
Kontrolka Button zmienia rozmiar, aby obejmowała cały ciąg. Ponadto dopełnienie zostało dodane wokół tekstu, co powoduje Button rozwinięcie kontrolki we wszystkich czterech kierunkach.
Przeciągnij kontrolkę Button z przybornika na formularz. Umieść go w pobliżu prawego dolnego rogu formularza.
Zmień wartość Button właściwości kontrolki AutoSize na true.
Button Zmień właściwość kontrolki Text na "Ten przycisk ma długi ciąg dla właściwości Text".
Po zatwierdzeniu zmiany kontrolka Button zmienia rozmiar w kierunku lewej. Ogólnie rzecz biorąc, automatyczne ustalanie rozmiaru spowoduje zwiększenie rozmiaru kontrolki w kierunku przeciwległym Anchor ustawieniu właściwości.
Właściwości AutoSize i AutoSizeMode
Niektóre kontrolki obsługują AutoSizeMode
właściwość, która zapewnia bardziej szczegółową kontrolę nad automatycznym zachowaniem określania rozmiaru kontrolki.
Używanie właściwości AutoSizeMode
Przeciągnij kontrolkę Panel z przybornika na formularz.
Przeciągnij kontrolkę Button z przybornika do kontrolki Panel .
Umieść kontrolkę Button w prawym dolnym rogu kontrolki Panel .
Wybierz kontrolkę Panel i pobierz uchwyt ustalania rozmiaru w prawym dolnym rogu. Zmień rozmiar kontrolki, Panel aby był większy i mniejszy.
Ustaw wartość Panel właściwości kontrolki
AutoSizeMode
na GrowAndShrink.Rozmiary Panel kontrolek otaczają kontrolkę Button . Nie można zmienić rozmiaru kontrolki Panel .
Przeciągnij kontrolkę Button w kierunku lewego górnego rogu kontrolki Panel .
Kontrolka Panel zmienia rozmiar na nową pozycję kontrolki Button .
Następne kroki
Istnieje wiele innych funkcji układu do rozmieszczania kontrolek w aplikacjach Windows Forms. Oto kilka kombinacji, które można wypróbować:
Skompiluj formularz przy użyciu kontrolki TableLayoutPanel . Aby uzyskać szczegółowe informacje, zobacz Przewodnik: rozmieszczanie kontrolek w formularzach systemu Windows przy użyciu tableLayoutPanel. Spróbuj zmienić wartości TableLayoutPanel właściwości kontrolki Padding , a także Margin właściwość na jej kontrolkach podrzędnych.
Wypróbuj ten sam eksperyment przy użyciu kontrolki FlowLayoutPanel . Aby uzyskać szczegółowe informacje, zobacz Przewodnik: rozmieszczanie kontrolek w formularzach systemu Windows przy użyciu kontrolki FlowLayoutPanel.
Poeksperymentuj z zadokowaniem kontrolek podrzędnych w kontrolce Panel . Właściwość Padding jest bardziej ogólną realizacji DockPadding właściwości, i można zaspokoić siebie, że tak jest, umieszczając kontrolę nad dzieckiem w kontrolce Panel i ustawiając właściwość kontrolki Dock podrzędnej na Fillwartość . Panel Ustaw właściwość kontrolki Padding na różne wartości i zanotuj efekt.
Zobacz też
- AutoSize
- DockPadding
- Margin
- Padding
- AutoSize, właściwość — omówienie
- Przewodnik: rozmieszczanie kontrolek w aplikacji Windows Forms za pomocą kontrolki TableLayoutPanel
- Przewodnik: rozmieszczanie kontrolek w formularzach Windows Forms za pomocą kontrolki FlowLayoutPanel
- Przewodnik: rozmieszczanie kontrolek na formularzach Windows Forms za pomocą linii przyciągania
.NET Desktop feedback
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla