1.让对象实现 INotifyPropertyChanged接口,以便属性更改发出通知
public
class
Person : INotifyPropertyChanged
{
public Person() { }
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
string name;
public string Name
{
get { return this.name; }
set
{
this.name = value;
OnPropertyChanged("Name");
}
}
int age;
public int Age
{
get { return this.age; }
set
{
this.age = value;
OnPropertyChanged("Age");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propName)
{
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propName));
}
}
}
{
public Person() { }
public Person(string name, int age)
{
this.name = name;
this.age = age;
}
string name;
public string Name
{
get { return this.name; }
set
{
this.name = value;
OnPropertyChanged("Name");
}
}
int age;
public int Age
{
get { return this.age; }
set
{
this.age = value;
OnPropertyChanged("Age");
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propName)
{
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propName));
}
}
}
2.xaml(略去布局)
< Label Content =" {Binding Name} " ></ Label >
< Label Content =" {Binding Age} " ></ Label >
< TextBox Text =" {Binding Path=Name, Source={StaticResource Tom}} " />
< TextBox Text =" {Binding Age} "
/>
3.目标:
当更改目标属性的时候,更新数据源(更新以后则绑定的对象也发生变化,如更改TextBox的Text则Label的Content也发生变化)
4.设置更新数据源执行时间
通过设置 Binding对象的UpdateSourceTrigger 来确定执行时间.
根据需要设置UpdateSourceTrigger 属性
完