本文介绍了试图了解INotifyPropertyChanged的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

若干(新手)问题:



1)我看到了很多的



 公众人物SelectedPerson {搞定;组; } 



我假定这不火属性更改?



所以,如果我想这样做,我必须提供以下

 私募人士selectedPerson?; 
公众人物SelectedPerson
{
得到
{
返回this.selectedPerson;
}

{
如果((this.selectedPerson =值)!)
{
this.selectedPerson =价值;
base.OnPropertyChanged(SelectedPerson);
//注意:使用ViewModelBase

}
}
}

2)如果我有以下几点:

 公共BOOL CanDeletePerson 
{
得到
{
返回SelectedPerson!= NULL;
}
}

和也在XAML

 <按钮IsEnabled ={结合CanDeletePerson}
命令={结合DeletePersonCommand}>删除< /按钮>



我如何得到它的重新评估CanDeletePerson财产?
基本上,它最初是禁用的,但是当我点击电网和移动行与行的SelectedPerson正在更新,但CanDeletePerson没有得到更新的价值,所以我怎么得到它实际上是检查值再?



3)我看



How do you subscribe to the event?

解决方案
  1. Correct - that does not fire
  2. Yes, to have CanDeletePerson reevaluated, you can raise PropertyChanged on CanDeletePerson, like so

        set
        {
            if ((this.selectedPerson != value))
            {
                this.selectedPerson = value;
                base.OnPropertyChanged("SelectedPerson");
                base.OnPropertyChanged("CanDeletePerson");
            }
        }
    

  3. Like any normal event, but if you're using WPF, you typically don't need to subscribe explicitly

这篇关于试图了解INotifyPropertyChanged的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 04:16
查看更多