C# 多线程查询问题
程序中有个多表查询很耗时,我想在加载数据的时候,新建一个线程,让这个线程去查询,完成后会将数据填充到一个DataTable中,有个函数判断DataTable有数据的话会将...
程序中有个多表查询很耗时,我想在加载数据的时候,新建一个线程,让这个线程去查询,完成后会将数据填充到一个DataTable中,有个函数判断DataTable有数据的话会将数据绑定到DataGrid。但是为什么程序调试的时候可以,但是我运行EXE就查询不出来呢,或者切换到别的窗体再切换回来的时候,就查询不出来。这个线程没有涉及到其他控件
展开
2个回答
2013-09-23
展开全部
你切换到别的窗口时,这个线程还在吗?你的线程定义在这个窗口里面的,还是在别的哪个地方?你切换回来时,是new的一个新窗口,还是原来的, 线程里面完成查询后,要想填充到界面来,是不能直接调用界面上的控件的.得写一个委托,然后写一个方法在窗体里面,并且在填充那里,采用Invoke或BeginInvoke来调用
2013-09-23
展开全部
自己跟踪一下查询语句的结果,再来判断程序里面的数据dt ,有的情况下再做查询,还有你的DT是如何定义的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询