winform 窗体退出前判断表单是否修改过,窗体上的控件有很多个,TextBox,combox,datagridview

判断修改的目的是为了提示用户是否要保存!... 判断修改的目的是为了提示用户是否要保存! 展开
 我来答
任瑞全
2012-09-07 · TA获得超过231个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:200万
展开全部
给你思路,在退出窗体的事件中写代码
遍历窗体中的控件,如果当前控件是TextBox 并判断他的Text属性是否为空
如果不为空,则提示保存

代码如下

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
foreach (Control currentControl in Controls)
{
if (currentControl is TextBox)
{
TextBox objTextBox = currentControl as TextBox;
if (!string.IsNullOrEmpty(objTextBox.Text))
{
MessageBox.Show("请保存数据");
}
}
}
}
追问
是判断是否修改过或者说编辑过!还有不是只有TextBox啊!
追答
是什么类型就去判断他的默认值是不是变了,比如CheckBox 默认值是False,但在遍历的时候是True,就说明改变了。原理都是一样的
黄工的控件库
2012-09-07 · TA获得超过5732个赞
知道小有建树答主
回答量:1644
采纳率:50%
帮助的人:516万
展开全部
加载时将信息保存到tag属性里 窗体退出时比较tag和当前的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
余漫轩
2012-09-07 · TA获得超过176个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:80.8万
展开全部
简单说呢,就是比较两个值,一个是打开时的值,一个是关闭时的值,相同不保存,不同则要提示保存。具体操作,可以自己思考思考哦~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1b491e1
2012-09-07 · TA获得超过1036个赞
知道小有建树答主
回答量:497
采纳率:0%
帮助的人:541万
展开全部
这个主要看你使用什么方式编写代码的

标准对象编写方式,你可以在UI view实体上实现INotifyPropotyChanged 和IEditAbled两个接口去实现

如果是使用dataset+Bindingsource的话,本身dataset已经实现上面的接口,你可以用dataset.getChanged方法获得是否有修改的值

如果你是自己手工赋值的,那就没啥简单方法了。只能自己缓存一个原始的对象值,然后自己挨个判定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mcclure
2012-09-11 · 超过15用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:42.4万
展开全部
添加每个控件的值改变事件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式