WPF OnPropertyChanged不寫死參數PropertyName

Posted by Leo Yang on 2020-07-02

[.net framework 4.5 ↑]使用CallerMemberName Attribute

一般寫法

繼承INotifyPropertyChanged Interface
實做介面

1
public void OnPropertyChanged(string parameter){}
CallerMemberName Attribute

這樣OnPropertyChanged(“ProperyName”)這樣的東西要寫很多次,沒什麼意義
.net framework4.5之後加入了CallerMemberNameAttribute

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public void functionName([CallerMeberName] string parameter=""){}

//以後都可以
private string _TestProperty = string.Empty;
public string TestProperty
{
get
{
return _TestProperty;
}
set
{
_TestProperty = value;
//不用寫參數很方便
//OnPropertyChanged("TestProperty");
OnPropertyChanged();
}
}