C# 多线程读取数据并保存在DataGridView中,如果操作?代码是什么?谢谢
生活随笔
收集整理的這篇文章主要介紹了
C# 多线程读取数据并保存在DataGridView中,如果操作?代码是什么?谢谢
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
說個大概吧。 首先有一個讀取數據的方法getData。 該方法里面有 獲取數據A和放入DataGridView的操作。 然后有個總的方法getAllData來New 線程,
線程調用getData方法,通過一些全局變量來控制獲取的是數據A B或C 因為線程調用方法是無參數的。如果獲取數據是同一個來源的最好lock一下,
保證同一時間內只有一個線程進入數據源。
當非主線程控制主線程創建的DataGridView時候需要使用委托來更新DataGridView里的數據
簡單的寫了下
public delegate void updataText(string str);
/// <summary>
/// 委托
/// </summary>
/// <param name= 我是用一個前臺定時器(System.Windows.Forms.Timer)Timer1刷新界面數據,一個后臺(線程)定時器(System.Timers.Timer)Timer2修改數據的。
倆個DataTable。Timer1負責把dt2的數據copy到dt1,并綁定到datagridview刷新界面,timer2負責修改dt2的數據。 贊同 無非是建立多個線程一起跑,需要注意的是把各個線程做的事情否分配好,然后有一個全局的容器最終把所有的結果搞定,并且給datagridview就行
代碼給你你也不能直接用,網上怎么使用線程的方法很多自己找去 贊同
線程調用getData方法,通過一些全局變量來控制獲取的是數據A B或C 因為線程調用方法是無參數的。如果獲取數據是同一個來源的最好lock一下,
保證同一時間內只有一個線程進入數據源。
當非主線程控制主線程創建的DataGridView時候需要使用委托來更新DataGridView里的數據
簡單的寫了下
public delegate void updataText(string str);
/// <summary>
/// 委托
/// </summary>
/// <param name= 我是用一個前臺定時器(System.Windows.Forms.Timer)Timer1刷新界面數據,一個后臺(線程)定時器(System.Timers.Timer)Timer2修改數據的。
倆個DataTable。Timer1負責把dt2的數據copy到dt1,并綁定到datagridview刷新界面,timer2負責修改dt2的數據。 贊同 無非是建立多個線程一起跑,需要注意的是把各個線程做的事情否分配好,然后有一個全局的容器最終把所有的結果搞定,并且給datagridview就行
代碼給你你也不能直接用,網上怎么使用線程的方法很多自己找去 贊同
總結
以上是生活随笔為你收集整理的C# 多线程读取数据并保存在DataGridView中,如果操作?代码是什么?谢谢的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 算法学习之百钱买百鸡
- 下一篇: 解决Extjs中textarea不支持k