[問題] WPF MVVM 簡化 Data Binding 實作?

作者: Rukawa31 (掃把昕與魯熊)   2015-08-10 01:05:22
一直以來, 我都在 ViewModel 如此實作 Data Binding Logic
int _data0;
public int Data0
{
get { return _data0; }
set
{
_data0 = value;
RaisePropertyChanged("Data0");
}
}
int _data1;
public int Data1
{
get { return _data1; }
set
{
_data1 = value;
RaisePropertyChanged("Data1");
}
}
開始學習時讀了幾個範例也都是這樣寫
並由 ViewModel base class 來實作 RaisePropertyChanged()
想請教一個沒事找事做的問題...
怎樣把 data binding logic 寫得更加簡潔, 更加優雅
讓宣告 binded data 時, 不用每次在 setter (or mutator)
都再寫一次 RaisePropertyChanged()
小弟第一個念頭是用 generic type 改寫, 即
public class BindedData<T>
{
...
}
但我寫完盯了它看幾分鐘後就覺得好醜 囧
後來陸續天花亂墜想了用 hash table, reflection 等等的
但這些都要在執行時期轉型, 我認為這對於 performance 傷害太大
所以想請教各位先進可否指教些寫法
謝謝 <(_ _)>
作者: ssccg (23)   2015-08-10 02:28:00
寫個plugin幫你產生你不想自己寫的code
作者: fo40225   2015-08-10 21:53:00
T4?
作者: Litfal (Litfal)   2015-08-11 19:53:00
哪些屬性要加、哪些不加?

Links booklink

Contact Us: admin [ a t ] ucptt.com