在多线程操作界面控件或者组件的时候,经常会遇到一些问题。
我们在多线程操作控件的时候,一般都使用如下代码来操作。
delegate void MsgDel( string str); protected void MsgEvent( string str) { if (txtContent.InvokeRequired) { txtContent.BeginInvoke( new MsgDel(MsgEvent), str); return ; } txtContent.Text=str; } |
但是Debug运行时,我仍然会遇到像如下问题“Cross-thread operation not valid: accessed from a thread other than the thread it was created on.”,不知道为什么,期待高手能够给予指点。
为了暂时解决这个问题,我暂时采用在主窗体添加下面代码的方式临时解决。
Control.CheckForIllegalCrossThreadCalls = false;
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步