1. 程式人生 > >.NET資料繫結說明和使用方法

.NET資料繫結說明和使用方法


資料繫結對被繫結物件有特殊要求,如果只是普通的get;set屬性的物件用在資料繫結上無法雙向繫結(只有Model值不會變或者Model變了不要求介面跟著變才可以使用普通屬性),

一般要求類實現InotifyPropertyChanged介面

INotifyPropertyChanged是.NET內建的介面,資料繫結會檢測DataContext是否實現了INotifyPrepertyChanged,如果實現了,就會監聽PropertyChanged得知屬性變化了

這些字字都是讓你理解的,來個例項就明白了:別的不看,就找有Binding關鍵字的,就明白了

比如說:我在WPF中有兩個標籤,都是CheckBox的,想實現點選checkBox1,checkBox2也被點選了(或者相反),怎麼實現呢?

 <CheckBox Content="1" Height="16" HorizontalAlignment="Left" Margin="119,55,0,0" Name="checkBox1" VerticalAlignment="Top" />
        <CheckBox IsChecked="{Binding IsChecked,ElementName=checkBox1}" Content="2" Height="16" HorizontalAlignment="Left" Margin="121,88,0,0" Name="checkBox2" VerticalAlignment="Top" />

繫結就是{Binding}這個屬性,IsChecked="{Binding IsChecked,ElementName=checkBox1}"意思就是checkBox2的點選事件IsChecked繫結也是IsChecked的,是誰的呢?就是用ElementName=checkBox1來實現,這樣,兩個控制元件之間,就建立了聯絡,互相被點選了