This article has been localized into Danish by the community.
WrapPanel kontrollen
WrapPanel kontrollen vil placere hver af de underordnede kontroller ved siden af hinanden, horisontalt (standard) eller vertikalt, indtil der ikke er mere plads. Derefter vil det begynde på den næste linje og derefter fortsætte. Brug det, når du ønsker en vertikal eller horisontal liste af kontroller, der automatisk går på næste linje, når der ikke er mere plads.
Når WrapPanel kontrollen benytter den Horizontal orientering, vil underordnede kontroller få den samme højde baseret på det højeste element. Når WrapPanel er i Vertical orintering, vil underordnede kontroller få samme bredde baseret på de bredeste element.
I det første eksempel vil vi tjekke et WrapPanel med standard (Horizontal) orienteering:
<Window x:Class="WpfTutorialSamples.Panels.WrapPanel"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WrapPanel" Height="300" Width="300">
<WrapPanel>
<Button>Test button 1</Button>
<Button>Test button 2</Button>
<Button>Test button 3</Button>
<Button Height="40">Test button 4</Button>
<Button>Test button 5</Button>
<Button>Test button 6</Button>
</WrapPanel>
</Window>
Bemærk, at jeg sætter en specific højde på en af knapperne i anden række. I det resulterende skærmbilledet vil du se, at dette får hele rækken af knapper til at have samme højde i stedet for den ønskede højde, som vist på førte række. Du vil også bemærke, at panelet gør nøjagtig som navnet antyder: Det ombryder indholdet, når det ikke kan få plads til mere. I dette tilfælde var der ikke plads til den fjerde knap, så den ender automatisk på næste linje.
Gør du vinduet og dermed den tilgængelige plads mindre, vil du se hvordan panelet med det samme justerer sig efter det:
Al denne opførsel gælder også, hvis du sætter Orientation til Vertical. Her er nøjagtig det samme eksempel som før, men med et Vertical WrapPanel:
<Window x:Class="WpfTutorialSamples.Panels.WrapPanel"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WrapPanel" Height="120" Width="300">
<WrapPanel Orientation="Vertical">
<Button>Test button 1</Button>
<Button>Test button 2</Button>
<Button>Test button 3</Button>
<Button Width="140">Test button 4</Button>
<Button>Test button 5</Button>
<Button>Test button 6</Button>
</WrapPanel>
</Window>
Du kan se hvordan knapperne placeres vertikalt i stedet for horisontalt, fordi de ombrydes når de rammer bunden af vinduet. I dette tilfælde satte jeg en større bredde på den fjerde knap, og du vil se, at knapperne i samme kolonner også får samme bredde, ganske som vi så med knaphøjden i det Horizontal eksempel.
Vær opmærksom på, at mens det Horizontal WrapPanel vil match højden på samme række og det Vertical WrapPanel vil match bredden i samme kolonner, bliver højden ikke matched i et Vertical WrapPanel, og bredden ikke matchet i et Horizontal WrapPanel. Se på dette eksempel, som er Vertical WrapPanel, men hvor den fjerde knap får en brugerdefineret bredde OG højde:
<Button Width="140" Height="44">Test button 4</Button>
Det vil se således ud:
Bemærk, at knap 5 kun bruger bredden - den tager ikke hensyn til højden selv om det forårsager, at den sjette knap bliver skubbet til en ny kolonner.