1. 设置一个布尔类型的字段 isChanged,保存是否有更改;
2. 如是控件是 TextBox,在其 TextChanged 事件处理函数中将 isChanged 设置为 true;
3. 处理 Form 的 FormClosing 事件,在其中弹出提示。
参考代码如下:
public partial class Form1 : Form
{
private bool isChanged = false;
public Form1()
{
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
isChanged = true;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (isChanged)
{
DialogResult r = MessageBox.Show("数据已修改,是否放弃?", "提示",
MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button2);
if (r == System.Windows.Forms.DialogResult.No)
e.Cancel = true;
}
}
}