DataTemplate.Triggers Ö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.
Özellik değerleri uygulayan veya bir veya daha fazla koşula göre eylemler gerçekleştiren tetikleyicilerden oluşan bir koleksiyon alır.
public:
property System::Windows::TriggerCollection ^ Triggers { System::Windows::TriggerCollection ^ get(); };
[System.Windows.Markup.DependsOn("VisualTree")]
public System.Windows.TriggerCollection Triggers { get; }
[System.Windows.Markup.DependsOn("VisualTree")]
[System.Windows.Markup.DependsOn("Template")]
public System.Windows.TriggerCollection Triggers { get; }
[<System.Windows.Markup.DependsOn("VisualTree")>]
member this.Triggers : System.Windows.TriggerCollection
[<System.Windows.Markup.DependsOn("VisualTree")>]
[<System.Windows.Markup.DependsOn("Template")>]
member this.Triggers : System.Windows.TriggerCollection
Public ReadOnly Property Triggers As TriggerCollection
Özellik Değeri
Tetikleyici nesneleri koleksiyonu. Varsayılan değer null değeridir.
- Öznitelikler
Örnekler
Aşağıda DataTemplate özelliğinin kullanımı gösterilmektedir Triggers .
<DataTemplate DataType="{x:Type src:AuctionItem}">
<Border BorderThickness="1" BorderBrush="Gray"
Padding="7" Name="border" Margin="3" Width="500">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="20"/>
<ColumnDefinition Width="86"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Polygon Grid.Row="0" Grid.Column="0" Grid.RowSpan="4"
Fill="Yellow" Stroke="Black" StrokeThickness="1"
StrokeLineJoin="Round" Width="20" Height="20"
Stretch="Fill"
Points="9,2 11,7 17,7 12,10 14,15 9,12 4,15 6,10 1,7 7,7"
Visibility="Hidden" Name="star"/>
<TextBlock Grid.Row="0" Grid.Column="1" Margin="0,0,8,0"
Name="descriptionTitle"
Style="{StaticResource smallTitleStyle}">Description:</TextBlock>
<TextBlock Name="DescriptionDTDataType" Grid.Row="0" Grid.Column="2"
Text="{Binding Path=Description}"
Style="{StaticResource textStyleTextBlock}"/>
<TextBlock Grid.Row="1" Grid.Column="1" Margin="0,0,8,0"
Name="currentPriceTitle"
Style="{StaticResource smallTitleStyle}">Current Price:</TextBlock>
<StackPanel Grid.Row="1" Grid.Column="2" Orientation="Horizontal">
<TextBlock Text="$" Style="{StaticResource textStyleTextBlock}"/>
<TextBlock Name="CurrentPriceDTDataType"
Text="{Binding Path=CurrentPrice}"
Style="{StaticResource textStyleTextBlock}"/>
</StackPanel>
</Grid>
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=SpecialFeatures}">
<DataTrigger.Value>
<src:SpecialFeatures>Color</src:SpecialFeatures>
</DataTrigger.Value>
<DataTrigger.Setters>
<Setter Property="BorderBrush" Value="DodgerBlue" TargetName="border" />
<Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
<Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
<Setter Property="BorderThickness" Value="3" TargetName="border" />
<Setter Property="Padding" Value="5" TargetName="border" />
</DataTrigger.Setters>
</DataTrigger>
<DataTrigger Binding="{Binding Path=SpecialFeatures}">
<DataTrigger.Value>
<src:SpecialFeatures>Highlight</src:SpecialFeatures>
</DataTrigger.Value>
<Setter Property="BorderBrush" Value="Orange" TargetName="border" />
<Setter Property="Foreground" Value="Navy" TargetName="descriptionTitle" />
<Setter Property="Foreground" Value="Navy" TargetName="currentPriceTitle" />
<Setter Property="Visibility" Value="Visible" TargetName="star" />
<Setter Property="BorderThickness" Value="3" TargetName="border" />
<Setter Property="Padding" Value="5" TargetName="border" />
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
Açıklamalar
Bir veri şablonu içinde tetikleyiciler oluşturuyorsanız, tetikleyicilerin ayarlayıcıları veri şablonunun kapsamındaki özellikleri ayarlanmalıdır. Aksi takdirde, verileri içeren türü hedefleyen bir stil kullanarak tetikleyiciler oluşturmak daha uygun olabilir. Örneğin, bir ListBox denetimi bağlarsanız kapsayıcılar nesnelerdir ListBoxItem . kapsamında DataTemplateolmayan özellikleri ayarlamak için tetikleyiciler kullanıyorsanız, stil oluşturmak ListBoxItem ve bu stil içinde tetikleyiciler oluşturmak daha uygun olabilir. Daha fazla bilgi için bkz. What Belongs in a DataTemplate? veri şablonu oluşturmaya genel bakış bölümünde.
Uyarı
Bu özellik yalnızca gösterilen koleksiyon söz dizimi aracılığıyla veya koleksiyon nesnesine erişerek ve Ekle gibi çeşitli yöntemleri kullanılarak Genişletilebilir Uygulama İşaretlemesi Dili'nde (XAML) ayarlanabilir. Koleksiyon nesnesine erişme özelliği salt okunurdur, koleksiyonun kendisi okuma-yazmadır.
XAML Özellik Öğesi Kullanımı
<object>
<object.Triggers>
OneOrMoreTriggers
</object.Triggers>
</object>
XAML Değerleri
OneOrMoreTriggers
Sıfır veya daha fazla TriggerBase nesne.