ItemsPanelTemplate Sınıf
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.
öğesinin öğelerinin ItemsControldüzeni için oluşturduğu paneli ItemsPresenter belirtir.
public ref class ItemsPanelTemplate : System::Windows::FrameworkTemplate
public class ItemsPanelTemplate : System.Windows.FrameworkTemplate
type ItemsPanelTemplate = class
inherit FrameworkTemplate
Public Class ItemsPanelTemplate
Inherits FrameworkTemplate
- Devralma
Örnekler
Yatay oluşturmak için, yatay ListBoxStackPanel belirten bir şablon oluşturabilir ve bunu özelliği olarak ItemsPanel ayarlayabilirsiniz. Aşağıdaki örnekte, yatay ListBoxbir ListBox Style oluşturan bir 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 yuvarlatılmış köşeleri olan bir yatay ListBox oluşturmak için bir ControlTemplate kullanılmıştır. Bu örnekte, özelliği önceki örnekte olduğu gibi ayarlamak ItemsPanel yerine yatay StackPanel değerinin içinde belirtildiğini ControlTemplateunutmayın. özelliğinin IsItemsHost üzerinde StackPanelolarak ayarlandığını true
ve oluşturulan öğelerin panele gitmesi gerektiğini unutmayın. Bu şekilde belirttiğinizde ItemsPanel , kullanmadan ControlTemplatedenetimin kullanıcısı tarafından değiştirilemez. Bu nedenle, bunu yalnızca panelin şablon kullanmadan 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, öğesi ItemsPresenter tarafından ItemsPanelTemplatebelirtilen öğelere göre öğelerin düzeni için paneli 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>
üzerinde farklı stil oluşturma ve şablon oluşturma özelliklerinin nasıl kullanılacağına ItemsControlilişkin bir örnek için bkz. Veri Şablonu Oluşturmaya Genel Bakış.
Açıklamalar
, ItemsPanelTemplate öğelerin düzeni için kullanılan paneli belirtir. GroupStyletüründe ItemsPanelTemplatebir Panel özelliğe sahiptir. ItemsControltürlerinin türünde ItemsPanelTemplatebir ItemsPanel özelliği vardır.
Her ItemsControl türün varsayılan ItemsPanelTemplatebir değeri vardır. ItemsControl sınıfı için varsayılan ItemsPanel değer, öğesini belirten bir ItemsPanelTemplate StackPaneldeğeridir. için ListBox, varsayılan olarak öğesini VirtualizingStackPanelkullanır. için MenuItem, varsayılan olarak kullanır WrapPanel. için StatusBar, varsayılan olarak kullanır DockPanel.
Oluşturucular
ItemsPanelTemplate() |
ItemsPanelTemplate sınıfının örneğini başlatır. |
ItemsPanelTemplate(FrameworkElementFactory) |
Belirtilen şablonla sınıfının bir örneğini ItemsPanelTemplate başlatır. |
Özellikler
Dispatcher |
Dispatcher Bunun DispatcherObject ilişkili olduğunu alır. (Devralındığı yer: DispatcherObject) |
HasContent |
Bu şablonun iyileştirilmiş içeriğe sahip olup olmadığını gösteren bir değer alır. (Devralındığı yer: FrameworkTemplate) |
IsSealed |
Bu nesnenin değiştirilemez durumda olup olmadığını belirten bir değer alır. (Devralındığı yer: FrameworkTemplate) |
Resources |
Bu şablon kapsamında kullanılabilecek kaynak koleksiyonunu alır veya ayarlar. (Devralındığı yer: FrameworkTemplate) |
Template |
Şablon bir yazıcı tarafından tanımlandığında veya uygulandığında şablon için XAML düğümlerini kaydeden veya oynatan nesneye başvuru alır veya ayarlar. (Devralındığı yer: FrameworkTemplate) |
VisualTree |
Şablonun kök düğümünü alır veya ayarlar. (Devralındığı yer: FrameworkTemplate) |
Yöntemler
CheckAccess() |
Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler. (Devralındığı yer: DispatcherObject) |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
FindName(String, FrameworkElement) |
Bu şablonda tanımlanan belirtilen adla ilişkilendirilmiş öğeyi bulur. (Devralındığı yer: FrameworkTemplate) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
LoadContent() |
Şablonun içeriğini bir nesnenin örneği olarak yükler ve içeriğin kök öğesini döndürür. (Devralındığı yer: FrameworkTemplate) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
RegisterName(String, Object) |
Geçerli ad kapsamına yeni bir ad/nesne çifti kaydeder. (Devralındığı yer: FrameworkTemplate) |
Seal() |
Şablonu değiştirilemeyecek şekilde kilitler. (Devralındığı yer: FrameworkTemplate) |
ShouldSerializeResources(XamlDesignerSerializationManager) |
Serileştirme işlemlerinin bu sınıfın örneklerinde özelliğin Resources değerini seri hale getirip getirmemesi gerektiğini belirten bir değer döndürür. (Devralındığı yer: FrameworkTemplate) |
ShouldSerializeVisualTree() |
Serileştirme işlemlerinin bu sınıfın örneklerinde özelliğin VisualTree değerini seri hale getirip getirmemesi gerektiğini belirten bir değer döndürür. (Devralındığı yer: FrameworkTemplate) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
UnregisterName(String) |
XAML ad kapsamlarından bir ad/nesne eşlemesini kaldırır. (Devralındığı yer: FrameworkTemplate) |
ValidateTemplatedParent(FrameworkElement) |
Şablonlanan üst öğenin null ItemsPresenter olmayan bir nesne olup olmadığını denetler. |
VerifyAccess() |
Çağıran iş parçacığının bu DispatcherObjecterişimine sahip olmasını zorlar. (Devralındığı yer: DispatcherObject) |
Belirtik Arabirim Kullanımları
INameScope.FindName(String) |
Sağlanan tanımlayıcı ada sahip bir nesne döndürür. (Devralındığı yer: FrameworkTemplate) |
IQueryAmbient.IsAmbientPropertyAvailable(String) |
Belirtilen bir ortam özelliğinin geçerli kapsamda kullanılabilir olup olmadığını sorgular. (Devralındığı yer: FrameworkTemplate) |