2012-02-15 105 views
1

每当用户控件更改值时,用户控件是否可以接收更新?我有一个带有保存按钮的表单,并且我希望在值发生更改时立即将其激活。每当控件更改WPF中的值时更新父级

目前我正在使用我的视图,但我必须添加一个调用,每个属性,当它改变。这没问题,但对于编辑框,这意味着用户必须在保存按钮变为活动状态之前退出。

回答

1

如果您绑定您的视图视图模型,那么你可以查看模型内的标志IsDirty将在每次触发PropertyChanged事件

protected void FirePropertyChanged(string propertyName) 
    { 
     PropertyChangedEventHandler handler = PropertyChanged; 
     _isDirty = true; 
     if(handler != null) 
     { 
      handler(this, new PropertyChangedEventArgs(propertyName)); 
     } 
    } 

时间设定,然后用IsDirty

+0

许多绑定您的按钮感谢您的解决我的问题。 – user1145533 2012-02-19 08:39:27

1

最简单的方法是创建一个IsDirty布尔值属性,只要值发生更改就会被更改。 将保存按钮的IsEnabled属性耦合到IsDirty布尔值。

如果它是在一个你想要解耦的类中,使用一个事件/通知。