Dela via


Så här dockar du och fäster kontroller

Om du utformar ett formulär som användaren kan ändra storlek på vid körning bör kontrollerna i formuläret justeras och placeras korrekt. Kontroller har två egenskaper som hjälper till med automatisk placering och storleksändring när formuläret ändrar storlek.

  • Control.Dock

    Kontroller som är dockade fyller kanterna på kontrollens container, antingen formuläret eller en containerkontroll. Windows Utforskaren dockar till exempel sin TreeView-kontroll på vänster sida av fönstret och sin ListView-kontroll på höger sida av fönstret. Dockningsläget kan vara vilken sida som helst av kontrollens container eller ställas in för att fylla det återstående utrymmet i containern.

    Ett windows-formulär som visar de olika dockningslägena för en kontroll

    Kontrollerna dockas i omvänd z-ordning och egenskapen Dock interagerar med AutoSize egenskapen. Mer information finns i Automatisk storleksändring.

  • Control.Anchor

    När en förankrad kontrolls form ändras, behåller kontrollen avståndet mellan kontrollen och fästpunkterna. Om du till exempel har en TextBox kontroll som är fäst vid formulärets vänstra, högra och nedre kanter, när formuläret storleksändras, ändras TextBox-kontrollen vågrätt så att den bibehåller samma avstånd från formulärets högra och vänstra sidor. Kontrollen placerar sig också lodrätt så att dess plats alltid är samma avstånd från formulärets nedre kant. Om en kontroll inte är förankrad och formuläret justeras, ändras kontrollens position i förhållande till formulärets kanter.

    Ett Windows-formulär som visar de olika fästpunktslägena för en kontroll

Mer information finns i Position och layout för kontroller.

Docka en kontroll

En kontroll dockas genom att dess Dock-egenskap ställs in.

Anmärkning

Ärvda kontroller måste vara Protected för att kunna dockas. Om du vill ändra åtkomstnivån för en kontroll anger du dess egenskap Modifier i fönstret Egenskaper.

Använda designern

Använd fönstret Egenskaper för Visual Studio-designer för att ange dockningsläget för en kontroll.

  1. Välj kontrollen i designern.

  2. I fönstret Egenskaper väljer du pilen till höger om egenskapen Dock.

    Fönstret Egenskaper för Visual Studio för .NET Windows Forms där dock-egenskapen visas.

  3. Välj knappen som representerar kanten på containern där du vill docka kontrollen. Tryck på mittrutan för att fylla i innehållet i kontrollens formulär- eller containerkontroll. Tryck på (ingen) för att inaktivera dockning.

    Fönstret Egenskaper för Visual Studio för .NET Windows Forms med Dock-egenskapen expanderad.

Kontrollelementet ändras automatiskt i storlek för att passa de dockade kantens gränser.

Ange Dock programmatiskt

  1. Ange egenskapen Dock på en kontroll. I det här exemplet dockas en knapp till höger i containern:

    button1.Dock = DockStyle.Right;
    
    button1.Dock = DockStyle.Right
    

Ankra en kontroll

En kontroll fästs vid en kant genom att ställa in dess egenskap med ett eller flera värden.

Anmärkning

Vissa kontroller, till exempel ComboBox kontroll, har en gräns för deras längd. Att förankra kontrollen längst ned i formuläret eller containern kan inte tvinga kontrollen att överskrida sin höjdgräns.

Ärvda kontroller måste vara Protected för att kunna förankras. Om du vill ändra åtkomstnivån för en kontroll anger du dess egenskap Modifiers i fönstret Egenskaper.

Använda designern

Använd fönstret Egenskaper för Visual Studio-designer för att ange en kontrolls förankrade kanter.

  1. Välj kontrollen i designern.

  2. I fönstret Egenskaper väljer du pilen till höger om egenskapen Anchor .

    Egenskapspanelen för Visual Studio för .NET Windows Forms, där Anchor-egenskapen visas.

  3. Om du vill ange eller ta bort ett fästpunkt väljer du korsens övre, vänstra, högra eller nedre arm.

    Egenskapsfönstret för Visual Studio för .NET Windows Forms med Ankare-egenskapen expanderad.

Ange Fästpunkt programmatiskt

  1. Ange egenskapen Anchor på en kontroll. I det här exemplet är en knapp fäst till höger och nederkant på containern:

    button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
    
    button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
    

Se även