Bagikan melalui


Binding Kelas

Definisi

Menentukan pengikatan yang menghubungkan properti target pengikatan dan sumber data.

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Binding : BindingBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Binding : BindingBase
Public Class Binding
Inherits BindingBase
<Binding .../>
- or -
<dependencyobject dependencyproperty="{Binding bindingArgs}" />
Warisan
Object IInspectable DependencyObject BindingBase Binding
Atribut

Contoh

Contoh kode berikut menunjukkan cara membuat pengikatan di XAML. Untuk daftar kode lengkap, lihat sampel pengikatan data XAML.

<StackPanel Margin="5">

  <TextBlock Text="Name:" Style="{StaticResource DescriptionTextStyle}" 
    Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>

  <TextBox Text="{Binding Path=Name, Mode=TwoWay}" 
    Width="350" Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>

  <TextBlock Text="Organization:" Style="{StaticResource DescriptionTextStyle}" 
    Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>

  <!-- You can omit the 'Path=' portion of the binding expression. --> 
  <TextBox Text="{Binding Organization, Mode=TwoWay}" Width="350" 
    Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top"/>

</StackPanel>

Contoh kode berikut menunjukkan cara membuat pengikatan dalam kode.

// Create the source string.
string s = "Hello";

// Create the binding description.
Binding b = new Binding();
b.Mode = BindingMode.OneTime;
b.Source = s;

// Attach the binding to the target.
TextBlock MyText = new TextBlock();
MyText.SetBinding(TextBlock.TextProperty, b);
// Create the source string.
String^ s = ref new String(L"Hello");

// Create the binding description.
Binding^ b = ref new Binding();
b->Mode = BindingMode::OneTime;
b->Source = s;

// Attach the binding to the target.
TextBlock^ MyText = ref new TextBlock();
MyText->SetBinding(MyText->TextProperty, b);

Keterangan

Ekstensi markup {Binding} memungkinkan Anda menentukan nilai Pengikatan sebagai string atribut tunggal di XAML, termasuk mengatur properti Pengikatan seperti Jalur dan Sumber. Untuk informasi selengkapnya tentang konsep pengikatan data, lihat Pengikatan data secara mendalam.

Kelas Pengikatan mungkin dianggap sebagai paparan kode di belakang ekstensi markup {Binding}. Jika pengikatan sudah diterapkan ke target (yang terjadi ketika XAML dimuat), Anda tidak dapat mengatur properti baca-tulis dari objek Pengikatan untuk mengubah bagaimana pengikatan berperilaku pada run-time. Setiap pengikatan yang ditentukan XAML harus dianggap tidak dapat diubah. Tetapi Anda dapat membuat objek Pengikatan baru, mengatur propertinya, dan membuat pengikatan baru pada target elemen UI tertentu menggunakan FrameworkElement.SetBinding. Untuk informasi selengkapnya, lihat Membuat pengikatan dalam kode.

Objek Pengikatan menghubungkan properti dependensi FrameworkElement langsung ke objek data sehingga pembaruan pada objek data secara otomatis disebarluaskan ke properti yang menggunakan pengikatan data. Kelas Pengikatan menentukan properti pengikatan. Setiap pengikatan harus memiliki elemen target, properti target, dan sumber data, meskipun beberapa nilai disediakan secara default jika Anda tidak menentukannya.

Untuk mengikat properti atau sub-properti pada objek data, atur properti Jalur objek Pengikatan. Untuk informasi selengkapnya tentang cara mengatur Jalur dalam kode atau di XAML, lihat Sintaks jalur properti atau ekstensi markup {Binding}.

Anda dapat menerapkan instans kelas Pengikatan ke beberapa target. Namun, Anda tidak dapat mengubah nilai properti objek Pengikatan setelah melampirkannya ke elemen target.

Catatan

Memanggil metode FrameworkElement.SetBinding dan meneruskan objek Pengikatan baru tidak akan selalu menghapus pengikatan yang ada. Sebagai gantinya, Anda harus menggunakan metode .DependencyObject.ClearValue(DependencyProperty)

Untuk informasi selengkapnya tentang penggunaan atribut XAML untuk properti yang dapat mengambil Pengikatan, atau yang dapat diatur ke nilai terikat data, lihat ekstensi markup {Binding}.

Properti yang merupakan target pengikatan data harus merupakan properti dependensi. Untuk informasi selengkapnya, lihat Gambaran umum properti dependensi.

Konstruktor

Binding()

Menginisialisasi instans baru dari kelas Pengikatan .

Properti

Converter

Mendapatkan atau mengatur objek pengonversi yang dipanggil oleh mesin pengikatan untuk memodifikasi data karena diteruskan antara sumber dan target, atau sebaliknya.

ConverterLanguage

Mendapatkan atau mengatur nilai yang menamai bahasa yang akan diteruskan ke pengonversi apa pun yang ditentukan oleh properti Pengonversi .

ConverterParameter

Mendapatkan atau mengatur parameter yang dapat digunakan dalam logika Konverter .

Dispatcher

Selalu kembali null di aplikasi SDK Aplikasi Windows. Gunakan DispatcherQueue sebagai gantinya .

(Diperoleh dari DependencyObject)
DispatcherQueue

DispatcherQueue Mendapatkan yang dikaitkan dengan objek ini. DispatcherQueue mewakili fasilitas yang dapat mengakses DependencyObject pada utas UI bahkan jika kode dimulai oleh utas non-UI.

(Diperoleh dari DependencyObject)
ElementName

Mendapatkan atau mengatur nama elemen yang akan digunakan sebagai sumber pengikatan untuk Pengikatan.

FallbackValue

Mendapatkan atau mengatur nilai yang akan digunakan saat pengikatan tidak dapat mengembalikan nilai.

Mode

Mendapatkan atau menetapkan nilai yang menunjukkan arah aliran data dalam pengikatan.

Path

Mendapatkan atau mengatur jalur ke properti sumber pengikatan.

RelativeSource

Mendapatkan atau mengatur sumber pengikatan dengan menentukan lokasinya relatif terhadap posisi target pengikatan. Ini paling sering digunakan dalam pengikatan dalam templat kontrol XAML.

Source

Mendapatkan atau mengatur sumber data untuk pengikatan.

TargetNullValue

Mendapatkan atau mengatur nilai yang digunakan dalam target saat nilai sumber null.

UpdateSourceTrigger

Mendapatkan atau menetapkan nilai yang menentukan waktu pembaruan sumber pengikatan untuk pengikatan dua arah.

Metode

ClearValue(DependencyProperty)

Menghapus nilai lokal properti dependensi.

(Diperoleh dari DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Mengembalikan nilai dasar apa pun yang ditetapkan untuk properti dependensi, yang akan berlaku dalam kasus di mana animasi tidak aktif.

(Diperoleh dari DependencyObject)
GetValue(DependencyProperty)

Mengembalikan nilai efektif properti dependensi saat ini dari DependencyObject.

(Diperoleh dari DependencyObject)
ReadLocalValue(DependencyProperty)

Mengembalikan nilai lokal properti dependensi, jika nilai lokal ditetapkan.

(Diperoleh dari DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Mendaftarkan fungsi pemberitahuan untuk mendengarkan perubahan pada DependencyProperty tertentu pada instans DependencyObject ini.

(Diperoleh dari DependencyObject)
SetValue(DependencyProperty, Object)

Mengatur nilai lokal properti dependensi pada DependencyObject.

(Diperoleh dari DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Membatalkan pemberitahuan perubahan yang sebelumnya terdaftar dengan memanggil RegisterPropertyChangedCallback.

(Diperoleh dari DependencyObject)

Berlaku untuk

Lihat juga