WPF窗口关闭问题,当wpf窗体中的数据改动的时候会跳出如下图一样的对话框,如没有改动,则直接关闭

如图,就是弹出这样的对话框,要么保存后关闭,要么保存关闭,要么直接取消,回到当前的窗体,大虾们,有谁能给出代码啊,一定是wpf的啊,到时候在追加50分大侠们,是这样的,就... 如图,就是弹出这样的对话框,要么保存后关闭,要么保存关闭,要么直接取消,回到当前的窗体,大虾们,有谁能给出代码啊,一定是wpf的啊,到时候在追加50分
大侠们,是这样的,就是我在窗体中修改了一个线性图形,这个框中是没有按钮的,就是关闭右上角的红叉叉时候弹出的对话框,这个事件怎么做了,希望给出代码,谢谢
展开
 我来答
小鸣5566
2013-03-21 · TA获得超过540个赞
知道小有建树答主
回答量:1061
采纳率:0%
帮助的人:902万
展开全部
在Closing事件添加代码处理一下(Closed事件应该不合你的需求,已经关了,想取消回到窗体也来不及了)
三个按钮对话框可以用
DialogResult dr = MessageBox.Show("haha", "haha", MessageBoxButtons.YesNoCancel);
switch (dr)
{
case DialogResult.Yes:
break;
case DialogResult.No:
break;
case DialogResult.Cancel:
break;
}
至于如何判断数据是否改变,那要看你实际有什么数据了
更多追问追答
追问
是这样的,就是我在窗体中修改了一个线性图形,这个框中是没有按钮的,就是关闭右上角的红叉叉时候弹出的对话框,这个事件怎么做了,希望大侠给出代码,谢谢
追答
不好意思,上面的代码是winform里考来的,wpf里不能直接用(需要引入命名空间)。下面的可以直接在wpf里用。在窗体设计时找到Closing事件,双击添加事件处理方法,代码中就有了Window_Closing方法。

private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
MessageBoxResult mbr = MessageBox.Show("Text", "Title", MessageBoxButton.YesNoCancel);
switch (mbr)
{
case MessageBoxResult.Yes:
//此处保存
break;
case MessageBoxResult.No:
//不保存直接退出,必用写什么代码
break;
case MessageBoxResult.Cancel:
e.Cancel = true;//取消事件
break;
}
}
lzh3452
2013-03-21 · TA获得超过1044个赞
知道小有建树答主
回答量:1168
采纳率:100%
帮助的人:860万
展开全部
数据变动的话,如果是TextBox,那直接在TextChanged事件里设置一个全局状态变量的值就能区别出来,而Message在画面的Closing事件或Closed事件里添加MessageBox就行了,这些东西都和是不是wpf没有关系,只是个逻辑问题,事件上,这些比较重要的事件,微软出的语言中都有包含。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-21
展开全部
你这更新数据之后弹出Messagebox吧 更新就点是不更新就否是吗
MessageBoxResult confirmToDel = MessageBox.Show("您确定要更新吗?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question);
if (confirmToDel == MessageBoxResult.Yes)
{写你的更新方法}
看看这样行不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2013-03-26 · TA获得超过2184个赞
知道小有建树答主
回答量:631
采纳率:100%
帮助的人:644万
展开全部
建立两个form,form1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-21
展开全部
在TextChanged事件触发这个窗体不行就行了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式