wpf学习笔记-更新数据源

时间:2021-07-07 03:57:15
此示例基于  wpf学习笔记-指定数据源


1.让对象实现 INotifyPropertyChanged接口,以便属性更改发出通知

wpf学习笔记-更新数据源     public   class  Person : INotifyPropertyChanged
wpf学习笔记-更新数据源wpf学习笔记-更新数据源    
{
wpf学习笔记-更新数据源wpf学习笔记-更新数据源        
public Person() { }
wpf学习笔记-更新数据源        
public Person(string name, int age)
wpf学习笔记-更新数据源wpf学习笔记-更新数据源        
{
wpf学习笔记-更新数据源            
this.name = name;
wpf学习笔记-更新数据源            
this.age = age;
wpf学习笔记-更新数据源        }

wpf学习笔记-更新数据源
wpf学习笔记-更新数据源        
string name;
wpf学习笔记-更新数据源        
public string Name
wpf学习笔记-更新数据源wpf学习笔记-更新数据源        
{
wpf学习笔记-更新数据源wpf学习笔记-更新数据源            
get return this.name; }
wpf学习笔记-更新数据源            
set
wpf学习笔记-更新数据源wpf学习笔记-更新数据源            
{
wpf学习笔记-更新数据源                
this.name = value;
wpf学习笔记-更新数据源                OnPropertyChanged(
"Name");
wpf学习笔记-更新数据源            }

wpf学习笔记-更新数据源        }

wpf学习笔记-更新数据源
wpf学习笔记-更新数据源        
int age;
wpf学习笔记-更新数据源        
public int Age
wpf学习笔记-更新数据源wpf学习笔记-更新数据源        
{
wpf学习笔记-更新数据源wpf学习笔记-更新数据源            
get return this.age; }
wpf学习笔记-更新数据源            
set
wpf学习笔记-更新数据源wpf学习笔记-更新数据源            
{
wpf学习笔记-更新数据源                
this.age = value;
wpf学习笔记-更新数据源                OnPropertyChanged(
"Age");
wpf学习笔记-更新数据源            }

wpf学习笔记-更新数据源        }

wpf学习笔记-更新数据源
wpf学习笔记-更新数据源
wpf学习笔记-更新数据源        
public event PropertyChangedEventHandler PropertyChanged;
wpf学习笔记-更新数据源
wpf学习笔记-更新数据源        
protected void OnPropertyChanged(string propName)
wpf学习笔记-更新数据源wpf学习笔记-更新数据源        
{
wpf学习笔记-更新数据源            
if (this.PropertyChanged != null)
wpf学习笔记-更新数据源wpf学习笔记-更新数据源            
{
wpf学习笔记-更新数据源                PropertyChanged(
thisnew PropertyChangedEventArgs(propName));
wpf学习笔记-更新数据源            }

wpf学习笔记-更新数据源        }

wpf学习笔记-更新数据源
wpf学习笔记-更新数据源    }

2.xaml(略去布局)

wpf学习笔记-更新数据源
wpf学习笔记-更新数据源        
< Label  Content =" {Binding Name} " ></ Label >
wpf学习笔记-更新数据源        
< Label  Content =" {Binding Age} " ></ Label >
wpf学习笔记-更新数据源        
< TextBox  Text =" {Binding Path=Name, Source={StaticResource Tom}} "   />
wpf学习笔记-更新数据源        
< TextBox  Text =" {Binding Age} "  
wpf学习笔记-更新数据源            
/>
这里又出现了新的绑定语法 ,{Binding Path=Age}等价{Binding Age}

3.目标:
当更改目标属性的时候,更新数据源(更新以后则绑定的对象也发生变化,如更改TextBox的Text则Label的Content也发生变化)

4.设置更新数据源执行时间
通过设置 Binding对象的UpdateSourceTrigger  来确定执行时间.
wpf学习笔记-更新数据源
根据需要设置UpdateSourceTrigger 属性