C# Winform datagridview不显示绑定的datatable的数据 可以测试到datatable中有数据
以前的程序是将登陆窗体作为应用程序中Run()的,然后使用线程池将主窗体显示出来,DataGridView上的数据也是有服务器返回并在客户端显示的,都没有问题。今天把程序...
以前的程序是将登陆窗体作为应用程序中Run()的,然后使用线程池将主窗体显示出来,DataGridView上的数据也是有服务器返回并在客户端显示的,都没有问题。今天把程序改了下,把主窗体改为Run()的窗体,但是遇到了问题,客户端能收到服务器发来的数据,但是就是不能显示在
DataGridView上,大家帮忙看看原因。
有人告诉我是因为:如果你的handleMsg方法,是在一个单独的线程中(比如Timer)调用的,那么直接调用方法是
不行的,因为你绑定数据源的时候,会造成DataGridView刷新,而控件刷新应该是发生在UI线程中,这属于跨线程操作UI界面,所以必须利用
Invoke。
我的handleMsg方法确实是在一个新线程中调用的,可以要在这里用Invoke的话就会出现:窗体句柄创建之前不能调用Invoke的错误。。
难道可以在Run()主窗体的时候把窗体指针传过来吗?大家帮忙看看 展开
DataGridView上,大家帮忙看看原因。
有人告诉我是因为:如果你的handleMsg方法,是在一个单独的线程中(比如Timer)调用的,那么直接调用方法是
不行的,因为你绑定数据源的时候,会造成DataGridView刷新,而控件刷新应该是发生在UI线程中,这属于跨线程操作UI界面,所以必须利用
Invoke。
我的handleMsg方法确实是在一个新线程中调用的,可以要在这里用Invoke的话就会出现:窗体句柄创建之前不能调用Invoke的错误。。
难道可以在Run()主窗体的时候把窗体指针传过来吗?大家帮忙看看 展开
若以下回答无法解决问题,邀请你更新回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询