WEB开发网
开发学院图形图像Flash 学Silverlight 2系列(11):数据绑定 阅读

学Silverlight 2系列(11):数据绑定

 2008-10-03 11:36:17 来源:WEB开发网   
核心提示: private void UserControl_Loaded(object sender, RoutedEventArgs e){User user = new User();user.Name = "TerryLee";user.Address = "中国

private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
  User user = new User();
  user.Name = "TerryLee";
  user.Address = "中国 天津";
  lblName.DataContext = user;
  lblAddress.DataContext = user;
}

运行示例后,可以看到:

学Silverlight 2系列(11):数据绑定

上面这种数据绑定模式,只是显示数据而不对数据做任何修改,默认的绑定模式是一次绑定OneTime。

单向绑定示例

如果需要在数据源发生变化时能够通知UI进行相应的更新,即使用单向绑定OneWay或者双向绑定TwoWay,则业务实体需要实现接口INotifyPropertyChanged。在本示例中,我们加上一个更新按钮,当单击按钮时更新user实例的属性值,会看到界面上的数据也会发生变化。

修改一下User类,使其实现INotifyPropertyChanged接口。

public class User : INotifyPropertyChanged
{
  public event PropertyChangedEventHandler PropertyChanged;
  private string _name;
  public string Name
  {
    get { return _name; }
    set
    {
      _name = value;
      if(PropertyChanged != null)
      {
        PropertyChanged(this, new PropertyChangedEventArgs("Name"));
      }
    }
  }
  private string _address;
  public string Address
  {
    get { return _address; }
    set
    {
      _address = value;
      if (PropertyChanged != null)
      {
        PropertyChanged(this, new PropertyChangedEventArgs("Address"));
      }
    }
  }
}

修改数据绑定模式,使用单向绑定OneWay模式,如{Binding Address, Mode=OneWay}

上一页  1 2 3 4 5  下一页

Tags:Silverlight 系列 数据

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接