ItemsPanelTemplate Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Anger panelen som ItemsPresenter skapas för layouten för objekten i en ItemsControl.
public ref class ItemsPanelTemplate : System::Windows::FrameworkTemplate
public class ItemsPanelTemplate : System.Windows.FrameworkTemplate
type ItemsPanelTemplate = class
inherit FrameworkTemplate
Public Class ItemsPanelTemplate
Inherits FrameworkTemplate
- Arv
Exempel
Om du vill skapa en vågrät ListBoxkan du skapa en mall som anger en vågrät StackPanel och ange den som ItemsPanel egenskap. I följande exempel visas ett ListBoxStyle som skapar en vågrät ListBox.
<Style TargetType="ListBox">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style>
I följande exempel används en ControlTemplate för att skapa en vågrät ListBox som har rundade hörn. Observera att i det här exemplet, i stället för att ange ItemsPanel egenskapen som i föregående exempel, anges den vågräta i StackPanelControlTemplate. Observera att egenskapen IsItemsHost är inställd true på på StackPanel, som anger att de genererade objekten ska gå till panelen. När du anger det på det här sättet kan ItemsPanel inte ersättas av användaren av kontrollen utan att använda en ControlTemplate. Därför gör du bara detta om du vet att du inte vill att panelen ska ersättas utan att använda en mall.
<Style TargetType="ListBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBox">
<Border CornerRadius="5" Background="{TemplateBinding ListBox.Background}">
<ScrollViewer HorizontalScrollBarVisibility="Auto">
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center"
IsItemsHost="True"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Du kan också göra följande för att uppnå samma resultat. I det här fallet ItemsPresenter skapar panelen för layouten för objekten baserat på vad som anges av ItemsPanelTemplate.
<Style TargetType="{x:Type ListBox}">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border CornerRadius="5"
Background="{TemplateBinding ListBox.Background}">
<ScrollViewer HorizontalScrollBarVisibility="Auto">
<ItemsPresenter/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Ett exempel på hur du använder de olika format- och mallegenskaperna i finns i ItemsControlÖversikt över dataöversikt.
Kommentarer
ItemsPanelTemplate Anger den panel som används för layouten av objekt. GroupStyle har en Panel egenskap av typen ItemsPanelTemplate. ItemsControl typer har en ItemsPanel egenskap som är av typen ItemsPanelTemplate.
Varje ItemsControl typ har standardvärdet ItemsPanelTemplate. ItemsControl För klassen är standardvärdet ItemsPanel ett ItemsPanelTemplate som anger en StackPanel. ListBoxFör använder standardinställningen VirtualizingStackPanel. För MenuItemanvänder WrapPanelstandardinställningen . För StatusBaranvänder DockPanelstandardinställningen .
Konstruktorer
| Name | Description |
|---|---|
| ItemsPanelTemplate() |
Initierar en instans av ItemsPanelTemplate klassen. |
| ItemsPanelTemplate(FrameworkElementFactory) |
Initierar en instans av ItemsPanelTemplate klassen med den angivna mallen. |
Egenskaper
| Name | Description |
|---|---|
| Dispatcher |
Hämtar det Dispatcher som DispatcherObject är associerat med. (Ärvd från DispatcherObject) |
| HasContent |
Hämtar ett värde som anger om den här mallen har optimerat innehåll. (Ärvd från FrameworkTemplate) |
| IsSealed |
Hämtar ett värde som anger om det här objektet är i ett oföränderligt tillstånd så att det inte kan ändras. (Ärvd från FrameworkTemplate) |
| Resources |
Hämtar eller anger den samling resurser som kan användas inom ramen för den här mallen. (Ärvd från FrameworkTemplate) |
| Template |
Hämtar eller anger en referens till objektet som registrerar eller spelar upp XAML-noderna för mallen när mallen definieras eller tillämpas av en skrivare. (Ärvd från FrameworkTemplate) |
| VisualTree |
Hämtar eller anger mallens rotnod. (Ärvd från FrameworkTemplate) |
Metoder
| Name | Description |
|---|---|
| CheckAccess() |
Avgör om den anropande tråden har åtkomst till den här DispatcherObject. (Ärvd från DispatcherObject) |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FindName(String, FrameworkElement) |
Söker efter elementet som är associerat med det angivna namnet som definierats i den här mallen. (Ärvd från FrameworkTemplate) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| LoadContent() |
Läser in innehållet i mallen som en instans av ett objekt och returnerar rotelementet i innehållet. (Ärvd från FrameworkTemplate) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| RegisterName(String, Object) |
Registrerar ett nytt namn/objektpar i det aktuella namnomfånget. (Ärvd från FrameworkTemplate) |
| Seal() |
Låser mallen så att den inte kan ändras. (Ärvd från FrameworkTemplate) |
| ShouldSerializeResources(XamlDesignerSerializationManager) |
Returnerar ett värde som anger om serialiseringsprocesser ska serialisera värdet Resources för egenskapen på instanser av den här klassen. (Ärvd från FrameworkTemplate) |
| ShouldSerializeVisualTree() |
Returnerar ett värde som anger om serialiseringsprocesser ska serialisera värdet VisualTree för egenskapen på instanser av den här klassen. (Ärvd från FrameworkTemplate) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| UnregisterName(String) |
Tar bort ett namn/objektmappning från XAML-namnskopet. (Ärvd från FrameworkTemplate) |
| ValidateTemplatedParent(FrameworkElement) |
Kontrollerar att den överordnade mallen är ett icke-null-objekt ItemsPresenter . |
| VerifyAccess() |
Framtvingar att den anropande tråden har åtkomst till den här DispatcherObject. (Ärvd från DispatcherObject) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| INameScope.FindName(String) |
Returnerar ett objekt som har det angivna identifieringsnamnet. (Ärvd från FrameworkTemplate) |
| IQueryAmbient.IsAmbientPropertyAvailable(String) |
Frågar om en angiven omgivande egenskap är tillgänglig i det aktuella omfånget. (Ärvd från FrameworkTemplate) |