[英]How to fire event if model property changes
我使用背景流程和MVP模式开发应用程序。 我可以像下面这样在ModelProcess(模型)中存储进程状态(isCanceled,isStarted或isPaused):
public event EventHandler CancelChanged;
bool isCanceled = false;
public bool IsCanceled
{
get { return isCanceled; }
set
{
isCanceled = value;
if (isCanceled)
{
if (CancelChanged != null)
{
CancelChanged(this, EventArgs.Empty);
}
}
}
}
如果isCanceled
设置为true
,则设置方法将仅调用CancelChanged
,无论之前是否为false
。 下面的代码将检查该值是否存在实际变化,并使其等幂。
set
{
if (value != isCanceled)
{
isCanceled = value;
if (CancelChanged != null)
{
CancelChanged(this, EventArgs.Empty);
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.