今天在做应用的时候,想让窗口关闭提示,可是遇到了一点麻烦,问题在于wm右上角有两种情况ok和X两种情况,当窗口右上角是x的时候这个时候调用窗体的Closing事件是没有问题的,可是当窗体是ok调用这个事件根本不执行,后来参考了一篇文章,在属性中修改:
原文“在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。” 当然在wm中无论主窗体你设置true还是false都是显示ok(我也没有明白为啥,主窗体是ok,修改窗体则为X)不过你修改MinimizeBox为false的时候Closing事件就可以执行了,为了就可以进行判断了
private void Form1_Closing(object sender, CancelEventArgs e)
{
//捕捉窗体Close事件,关闭窗口时提示
DialogResult re=MessageBox.Show("保存数据退出(是)直接退出(否)返回请按(取消)", "系统提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);
if ( re== DialogResult.Yes)
{
menuItem4_Click( sender, e);
}
else if(re==DialogResult.No)
{
e.Cancel = false;//允许退出系统
}
else
{
e.Cancel = true;//不允许退出系统
}
}
对于何时出现X何时出现ok我也没有很明白 只是在使用的时候如此进行就可以了,对于x直接进行cloing不许进行比的设置。
如果你想在wm中直接取消右上角的图标 那么在form属性中controlBox属性中选择false就可以。
下面是我看见的一篇不错的博文引用一下
2009-09-10 09:54使用.net 平台开发Mobile程序时,由于是基于移动设备,都和PC有很大差距,要求特别关注内存开销。另外相比PC来说,所支持的API是非常少的,需要经常查SDK。一些小地方若不留意,也会引起麻烦。
比如关于程序退出,即使在Close的event handler里写出处理代码,可是因为属性问题,这段代码并不会被执行。
在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。
比如关于程序退出,即使在Close的event handler里写出处理代码,可是因为属性问题,这段代码并不会被执行。
在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
前言 大家好,我是 god23bin,今天我们来介绍下设计模式中的一个重要的设计模式——策略模式。 当涉及到某个行为或算法有多个变体时,策略模式是一种常见的设计模式。它允许在运行时选择使用不同的策略,而无需修改现有代码。 现在就使用设计模式中经常出现的鸭子模型…