点击取消关闭窗口,如何让他不关闭,并且窗口内容(如筛选后的dataset)不变呢?

clleady 2008-12-08 11:24:48
如题?
...全文
186 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuqunying0545 2008-12-08
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 pp_shy 的回复:]
C# code
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("确定要退出嘛?", "退出确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) != DialogResult.OK)
{
e.Cancel = true;
}
}
[/Quote]

up
D0ckLng 2008-12-08
  • 打赏
  • 举报
回复
FormClosed就是Form已经关闭后做的事情.所以需要改成FormClosing事件.

支持2,4,6楼.
GTX280 2008-12-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 clleady 的回复:]
private void frmMain_FormClosed_1(object sender, FormClosedEventArgs e)
{
if(MessageBox.Show("确定要退出嘛?", "退出确认",  MessageBoxButtons.OKCancel,MessageBoxIcon.Information)==DialogResult.OK)
{
Application.Exit();
}
else
{

//frmMain frmmain = new frmMain();
//frmmain.Show();
}
}
我本来是这样的,但是我在frmMain中嵌入了datagradview搜索后,我搜索了内容后,再点击关闭窗口
点击取消,也就是跳到…
[/Quote]
把这两句去掉就可以了
pp_shy 2008-12-08
  • 打赏
  • 举报
回复

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("确定要退出嘛?", "退出确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) != DialogResult.OK)
{
e.Cancel = true;
}
}
clleady 2008-12-08
  • 打赏
  • 举报
回复
我不要彻底拒绝关闭按钮
我刚才在3楼发的程序如何改啊?谢谢
是是非非 2008-12-08
  • 打赏
  • 举报
回复
用Closing事件,不要用Closed事件

代码见2楼的
clleady 2008-12-08
  • 打赏
  • 举报
回复
private void frmMain_FormClosed_1(object sender, FormClosedEventArgs e)
{
if(MessageBox.Show("确定要退出嘛?", "退出确认", MessageBoxButtons.OKCancel,MessageBoxIcon.Information)==DialogResult.OK)
{
Application.Exit();
}
else
{
frmMain frmmain = new frmMain();
frmmain.Show();
}
}
我本来是这样的,但是我在frmMain中嵌入了datagradview搜索后,我搜索了内容后,再点击关闭窗口
点击取消,也就是跳到else,但是它变成新的frmMain了,我刚才搜索的内容没了,如何才能保留我
刚才datagradview中的内容呢?
长沙三毛 2008-12-08
  • 打赏
  • 举报
回复
1)设置窗体的ControlBox为false,彻底拒绝关闭按钮
2)在Closing事件中
         private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
}
simonezhlx 2008-12-08
  • 打赏
  • 举报
回复
lz,需求描述不够详细
jummy_lin 2008-12-08
  • 打赏
  • 举报
回复
大家都说明白啦!
nmfengyun 2008-12-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 clleady 的回复:]
private void frmMain_FormClosed_1(object sender, FormClosedEventArgs e)
{
if(MessageBox.Show("确定要退出嘛?", "退出确认", MessageBoxButtons.OKCancel,MessageBoxIcon.Information)==DialogResult.OK)
{
Application.Exit();
}
else
{
frmMain frmmain = new frmMain();

[/Quote]
else后什么也不做不就可以了吗.
wengjj1985 2008-12-08
  • 打赏
  • 举报
回复
我的做法跟6楼的一样,都是在closing事件时加个判断是否关闭窗口

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧