作者Rukawa31 (扫把昕与鲁熊)
看板C_Sharp
标题[问题] WPF MVVM 简化 Data Binding 实作?
时间Mon Aug 10 01:05:22 2015
一直以来, 我都在 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://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1439139925.A.BEB.html
1F:→ ssccg: 写个plugin帮你产生你不想自己写的code 08/10 02:28
2F:→ fo40225: T4? 08/10 21:53
3F:推 Litfal: 哪些属性要加、哪些不加? 08/11 19:53