我的数据输入表单上有3个按钮,OK,APPLY,CANCEL。
此表格用于编辑医生的详细信息,如姓名,电话号码等......
我有一个对象doctorObj,它在任何给定时间都是空的(新医生)或从Linq查询中提取的对象。
我深深地将doctorObj克隆到EditCopyDoctor,它类型相同但用于表单编辑(因此如果点击取消,则数据库不需要更新)。
我想要实现的是观察EditCopyDoctor对原始doctorObj的更改,所以
If(doctor.Changed() && doctor.IsNotNew)
{
ApplyButton.Enabled = true;
}
else
{
ApplyButton.Enabled = false;
}
所以我想写一个事件来触发EditCopyDoctor上发生了什么变化是最好的方法,但我不确定如何。
我当然可以将ApplyButton.Enabled代码放在表单中的TextChanged事件中,但我想知道是否有更快的方法来执行此操作,我真的不想这样做,因为有10个以上的文本框和其他控件。
答案 0 :(得分:1)
由于您的“Doctor”类型听起来像是由LINQ to SQL / Entities生成的,您应该会发现它已经实现了INotifyPropertyChanged
接口。因此,您只需要观看PropertyChanged
事件并采取相应行动。