Condition.Binding Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur pengikatan yang menentukan properti kondisi. Ini hanya berlaku untuk MultiDataTrigger objek.
public:
property System::Windows::Data::BindingBase ^ Binding { System::Windows::Data::BindingBase ^ get(); void set(System::Windows::Data::BindingBase ^ value); };
public System.Windows.Data.BindingBase Binding { get; set; }
member this.Binding : System.Windows.Data.BindingBase with get, set
Public Property Binding As BindingBase
Nilai Properti
Nilai default-nya adalah null.
Contoh
Dalam contoh berikut, ItemsSource dari terikat ListBox ke Tempat, objek ObservableCollection<T>Tempat . Objek tempat memiliki properti Nama dan Status.
Masing-masing ListBoxItem menampilkan objek Tempat.ListBox Style Dalam contoh diterapkan ke masing-masing ListBoxItem. s Conditiondari MultiDataTrigger ditentukan singgahan bahwa jika nama dan status item data Tempat adalah "Portland" dan "OR" masing-masing, maka latar belakang yang sesuai ListBoxItem diatur ke Cyan.
<Window.Resources>
<c:Places x:Key="PlacesData"/>
<Style TargetType="ListBoxItem">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=State}" Value="WA">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Path=Name}" Value="Portland" />
<Condition Binding="{Binding Path=State}" Value="OR" />
</MultiDataTrigger.Conditions>
<Setter Property="Background" Value="Cyan" />
</MultiDataTrigger>
</Style.Triggers>
</Style>
<DataTemplate DataType="{x:Type c:Place}">
<Canvas Width="160" Height="20">
<TextBlock FontSize="12"
Width="130" Canvas.Left="0" Text="{Binding Path=Name}"/>
<TextBlock FontSize="12" Width="30"
Canvas.Left="130" Text="{Binding Path=State}"/>
</Canvas>
</DataTemplate>
</Window.Resources>
<StackPanel>
<TextBlock FontSize="18" Margin="5" FontWeight="Bold"
HorizontalAlignment="Center">Data Trigger Sample</TextBlock>
<ListBox Width="180" HorizontalAlignment="Center" Background="Honeydew"
ItemsSource="{Binding Source={StaticResource PlacesData}}"/>
</StackPanel>
Keterangan
MultiDataTriggers memungkinkan Anda mengatur nilai properti berdasarkan nilai data yang dikembalikan. Misalnya, jika Anda menampilkan daftar item tugas, Anda mungkin ingin menampilkan tugas dengan latar belakang merah jika memiliki prioritas tinggi dan belum dicari selama lebih dari dua minggu.
Anda membuat pengikatan dan menggunakan Path properti untuk mengikat properti objek tertentu (objek sumber pengikatan). Misalnya, Anda dapat mengikat properti PrioritasTugas. Untuk informasi selengkapnya, lihat Gambaran Umum Pengikatan Data.
Perhatikan bahwa jika itu adalah kondisi untuk MultiDataTriggerproperti , dan BindingValue harus diatur. Property Mengatur nilai akan menyebabkan pengecualian dalam kasus tersebut.
Penggunaan Atribut XAML
<object property="{Binding declaration}"/>
Penggunaan Elemen Properti XAML
<object>
<object.Binding>
<Binding …/>
</object.Binding>
</object>
Nilai XAML
Deklarasi Deklarasi pengikatan. Lihat Gambaran Umum Deklarasi Pengikatan untuk informasi selengkapnya.