//1.将窗体的属性KeyPrieview设置为true //keypreview属性为true的时候,就可以响应键盘事件v //2.在窗体KeyDown事件中加如下代码 private void Form1_KeyDown(object sender, KeyEventArgs e) { if( (e.KeyCode == Keys.F4)&&(e.Alt==true)) //屏蔽ALT+F4 { e.Handled = true; } } //e.Handled属性:获取或设置一个值,…
winform退出或关闭窗体时弹窗提示代码,当我们点击窗体的 X 按钮时,会弹出一个对话框,询问我们是直接退出,还是最小化到托盘,还是取消这个行为.或是是否保存当前修改等等.以下以最小化到托盘为例.        首先, 要确定已经将控件NotifyIcon拖到应用窗体中,属性name为notifyicon1. 然后, 双击窗体的FormClosing的事件 ,具码内容如下: private void Form1_FormClosing(object sender, FormClosingEve…
Thread th = new Thread(Excute); th.IsBackground = true;这样就解决问题了. 这个属性的意思就是把线程设置为后台线程. 然后关闭进程的同时,线程也会随之关闭.  …
this.Close();   只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出: Application.Exit();  强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出: Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题: System.Environment.Exit(0);   这是最彻底的退出方式,不管什么线程都被强制退出,把程序结束…
前言 FineUI中的Window控件常用作选择.新增或编辑内容.而关闭Window控件却有很多技巧,了解这些技巧有助于项目的快速开发. 如何关闭Window控件 第一个问题就是如何关闭Window控件,最明显的方式就是右上角的关闭图标了.总的说来,有三种方式: ESC按键(在Window控件所在页面获取焦点的情况下,按下键盘的ESC将会关闭当前激活窗体) 窗体右上角的关闭图标 用户自定义的关闭按钮 前两种方式自不必说,那么如何自定义关闭按钮呢?有两种做法: 按钮禁用回发,在页面初始化时注册关闭…
C#在关闭窗体的时候,有时线程还在后台执行,没有及时退出. 处理方案: 为Form添加FormClosing事件,加入以下语句,在退出时,杀死本进程. System.Diagnostics.Process.GetCurrentProcess().Kill();…
实现效果: 知识运用: KeyEventArgs类的Alt,Handled属性 public virtual bool Alt {get;} //获取一个值 该值指示是否曾按下Alt键 public bool Handled {get; set;} //获取或设置一个值  该值指示是否处理过此事件 //true表是跳过控件的默认处理 false表是还将该事件传递该默认控件处理程序 实现代码: private void Form1_KeyDown(object sender, KeyEventAr…
/// <summary>        /// 阻止 alt+f4和alt+space 按键        /// </summary>        /// <param name="e"></param>        protected override void OnKeyDown(System.Windows.Input.KeyEventArgs e)        {            if (Keyboard.Modi…
/// <summary>        /// 阻止 alt+f4和alt+space 按键        /// </summary>        /// <param name="e"></param>        protected override void OnKeyDown(System.Windows.Input.KeyEventArgs e)        {            if (Keyboard.Modi…
本人在做商用项目的推送消息功能时,借助第三方推送服务.这里避免有打广告的嫌疑,就不报名字了.由于是通过调用API接口,所以Post方法是自己写的,但是在开发环境是可以正常推送的,但是一上线就出各种问题.楼主猜测可能是开发环境测试时,推送的消息比较少,而线上推送消息很多,从而导致和连接数相关的错误.下文很有帮助,记录于此. 报的错误为:1. "基础连接已经关闭: 发送时发生错误"; 2016年10月25日18:56:53更新 后来本篇的所有方法都尝试了,发现最后也没解决问题.最后问题终于…