c#线程中使用委托。委托中操作了多个控件,界面卡死
1个回答
展开全部
在调用线程之前,打开自定义的进度条控件。之后再线程委托里边操作界面上的多个控件,导致进度条和界面卡死。//打开进度条 progressBar = new ProgressShow("初始化数据请稍候...");
progressBar.Show();//线程System.Threading.Thread treed3 = new System.Threading.Thread(new System.Threading.ThreadStart(mytest));
treed3.Start();
while (treed3.ThreadState == System.Threading.ThreadState.Running){Application.DoEvents();
}//关闭进度条
progressBar.Close();///
private void mytest(){try{ delegate void delInfo();
delInfo MyDelInfo = new delInfo(newThreadInfo); this.Invoke(MyDelInfo);// (new delInfo(newThreadInfo)); } newThreadInfo中操作多个界面控件}catch (Exception ex){progressBar.Close();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询