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

看板C_Sharp (C#)作者 (掃把昕與魯熊)時間10年前 (2015/08/10 01:05), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串1/1
一直以來, 我都在 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 傷害太大 所以想請教各位先進可否指教些寫法 謝謝 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.42.60 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1439139925.A.BEB.html

08/10 02:28, , 1F
寫個plugin幫你產生你不想自己寫的code
08/10 02:28, 1F

08/10 21:53, , 2F
T4?
08/10 21:53, 2F

08/11 19:53, , 3F
哪些屬性要加、哪些不加?
08/11 19:53, 3F
文章代碼(AID): #1LnuXLlh (C_Sharp)
文章代碼(AID): #1LnuXLlh (C_Sharp)