ItemsControl.ItemsPanel Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Öğelerin düzenini denetleen paneli tanımlayan şablonu alır veya ayarlar.
public:
property System::Windows::Controls::ItemsPanelTemplate ^ ItemsPanel { System::Windows::Controls::ItemsPanelTemplate ^ get(); void set(System::Windows::Controls::ItemsPanelTemplate ^ value); };
[System.ComponentModel.Bindable(false)]
public System.Windows.Controls.ItemsPanelTemplate ItemsPanel { get; set; }
[<System.ComponentModel.Bindable(false)>]
member this.ItemsPanel : System.Windows.Controls.ItemsPanelTemplate with get, set
Public Property ItemsPanel As ItemsPanelTemplate
Özellik Değeri
Öğelerin düzeni için kullanılacak paneli tanımlayan bir ItemsPanelTemplate. ItemsControl için varsayılan değer, StackPanelbelirten bir ItemsPanelTemplate değeridir.
- Öznitelikler
Örnekler
Yatay ListBoxoluşturmak için, yatay StackPanel belirten bir şablon oluşturabilir ve bunu ItemsPanel özelliği olarak ayarlayabilirsiniz. Aşağıdaki örnekte, yatay ListBoxoluşturan bir ListBoxStyle gösterilmektedir.
<Style TargetType="ListBox">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style>
Aşağıdaki örnekte köşeleri yuvarlatılmış yatay bir ListBox oluşturmak için bir ControlTemplate kullanılabilecek. Bu örnekte, ItemsPanel özelliğini önceki örnekte olduğu gibi ayarlamak yerine, yatay StackPanelControlTemplateiçinde belirtilir.
IsItemsHost özelliği, oluşturulan öğelerin panele gitmesi gerektiğini belirten StackPaneltrue
olarak ayarlanır. Bu şekilde belirttiğinizde, ItemsPanelControlTemplatekullanmadan denetimin kullanıcısı tarafından değiştirilemez. Bu nedenle, bunu yalnızca panelin şablon kullanılmadan değiştirilmesini istemediğinizi biliyorsanız yapın.
<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>
Alternatif olarak, aynı sonuçları elde etmek için aşağıdakileri yapabilirsiniz. Bu durumda, ItemsPresenterItemsPanelTemplatetarafından belirtilen öğelere göre öğelerin düzeni için panel oluşturur.
<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>
Açıklamalar
ListBoxiçin varsayılan ItemsPanelTemplateVirtualizingStackPanelbelirtir. MenuItemiçin varsayılan değer WrapPanelkullanır. StatusBariçin varsayılan değer DockPanelkullanır.
bir ItemsControliçindeki öğelerin düzenini etkilemek için, ItemsPanelTemplatebelirtmek için bu özelliği kullanırsınız.
ItemsControl görsel özelleştirme için büyük esneklik sağlar ve birçok stil ve şablon oluşturma özelliği sağlar. Veri öğelerini içeren öğelerin görünümünü etkileyecek bir stil ayarlamak için ItemContainerStyle özelliğini veya ItemContainerStyleSelector özelliğini kullanırsınız. Örneğin, ListBoxiçin oluşturulan kapsayıcılar ListBoxItem denetimleridir; ComboBoxiçin bunlar ComboBoxItem denetimleridir. Denetiminizde gruplandırma kullanıyorsanız, GroupStyle veya GroupStyleSelector özelliğini kullanabilirsiniz. Veri nesnelerinin görselleştirmesini belirtmek için ItemTemplate veya ItemTemplateSelector özelliğini kullanın. Daha fazla bilgi için bkz. Veri Şablonuna Genel Bakış.
Bağımlılık Özelliği Bilgileri
Tanımlayıcı alanı | ItemsPanelProperty |
meta veri özellikleri true olarak ayarlandı |
Hiç kimse |