时间:2021-05-20
需求分析:
我们在做winform开发的时候,有时候需要让程序休眠几秒钟,但是如果我们直接使用 Thread.Sleep()函数的话,页面UI就会停止响应。怎么样解决呢,你可以把页面涉及到表现UI的代码放到一个单线程处理,也可以采用我面的方法,加一个小函数就ok了。
if (MessageBox.Show("确定要清理吗?", "确认", MessageBoxButtons.YesNo) == DialogResult.Yes){ this.labMsg.Text = "正在清理,请稍候..."; ThreadPool.QueueUserWorkItem(state => { //延迟2秒执行 Thread.Sleep(2000); BeginInvoke(new Action(() => { //这里是实现某个功能的代码,返回结果给UI string result = Clean(); this.labMsg.Text = result; })); }); }也可以在线程里面休眠,然后再到主线程:
void Sleep(){ Thread sub = new Thread(() => { //这里还可以处理些比较耗时的事情 Thread.Sleep(1000);//休眠时间 this.Dispatcher.Invoke(new Action(() => { DoSomeThing();//调用处理事件 })); });}//休眠后你要做的事情void DoSomeThing(){ }到此这篇关于C#延迟执行方法函数实例讲解的文章就介绍到这了,更多相关C#延迟执行方法函数内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#实现程序等待延迟执行的方法。分享给大家供大家参考。具体如下:[System.Runtime.InteropServices.DllImport
本文实例讲述了C#接口实现方法。分享给大家供大家参考。具体如下:在讲解C#实现接口的实例解析之前我们来看看C#接口的定义,如果一个类派生于一个接口,它就会执行某
本文实例讲述了C#动态执行批处理命令的方法。分享给大家供大家参考。具体方法如下:C#动态执行一系列控制台命令,并允许实时显示出来执行结果时,可以使用下面的函数。
本文实例讲述了C#调用执行外部程序的实现方法。分享给大家供大家参考。具体分析如下:这里以调用notepad为例演示C#调用执行外部程序的方法。classTest
本文讲解了在C#中使用钩子技术处理消息的方法。1、声明钩子函数代理:publicdelegateIntPtrHookProc(intnCode,IntPtrwP