您需要将原始值存储为字符串,然后将它们与结果值进行比较。
或者,更简单的实现可以isDirty
在文本框更改事件上将布尔标志设置为 true,并在成功更新时重置为 false。
以下示例代码有助于突出显示所需内容:
if(ValuesHaveChanged())
{
DialogResult result = MessageBox.Show("Data has been changed, do you wish to save changes?", "Save Changes",MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
// HERE MY UPDATE CODE.
ResetChangeDetection();
}
}
.
private bool ValuesHaveChanged()
{
return this.isDirty;
/*
return !
(
this.savedName.Equals(NameTextbox.Text)
&& this.savedAddress.Equals(AddressTextbox.Text)
)
*/
}
.
private void ResetChangeDetection()
{
this.isDirty = false;
//this.savedName = NameTextbox.Text;
//this.savedAddress = AddressTextbox.Text;
}