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. null
varsayılan değerdir.
- Ö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>
Örneğin tamamı için bkz. Veri Bağlama Tanıtımı.
Açıklamalar
Bir veri şablonu içinde tetikleyici oluşturuyorsanız, tetikleyicilerin ayarlayıcıları veri şablonunun kapsamındaki özellikleri ayarliyor olmalı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 şablon oluşturmaya genel bakış bölümünde.
Not
Bu özellik yalnızca gösterilen koleksiyon söz dizimi aracılığıyla veya koleksiyon nesnesine erişerek ve Add gibi çeşitli yöntemleri kullanılarak Genişletilebilir Uygulama Biçimlendirme Dili'nde (XAML) ayarlanabilir. Koleksiyon nesnesine erişmek için ö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.