一、backgroundworker工作步驟
1.向窗體中拖入乙個backgroundworker控制項。
2.在某個方法或者事件中,呼叫backgroundworker的runworkerasync()方法。
3.該方法為非同步操作,將自動引發backgroundworker的dowork事件。
4.呼叫reportprogress方法將引發progresschanged事件。
二、乙個使用了backgroundworker的例子
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.text;
using system.windows.forms;
using system.threading;
using system.data.sqlclient;
//該用例需要乙個名為bgwtestdb的sql server資料庫
//資料庫中應包含tbbgwtest表。
//表中有data1、data2兩列。
//資料庫中還需要乙個儲存過程,sql語句如下:
/***************
create procedure insertonedata
@data1 nchar(10),
@data2 int
as insert into tbbgwtest (data1,data2) values (@data1, @data2)
********************/
namespace winbackgroundworkertest
private void btnadd_click(object sender, eventargs e)
private void bgwinsertdata_dowork(object sender, doworkeventargs e)
private void bgwinsertdata_progresschanged(object sender, progresschangedeventargs e)
//自定義函式 insertdata()
private void insertdata(backgroundworker worker)
catch(exception ex)
finally
thread.sleep(50);}}
private void bgwinsertdata_runworkercompleted(object sender, runworkercompletedeventargs e)
else if (e.cancelled)
else
messagebox.show("操作成功!", "提示", messageboxbuttons.ok, messageboxicon.information);}}
}
PDA開發系列 BackgroundWorker
摘要 在.net compact framework中,沒有backgroundworker,應該會讓我們這些用慣了backgroundworker的人感到非常的不便。backgroundworker可以非常方便解決執行緒和控制項之間的互操作問題,做出介面執行非常流暢的引用程式。該元件因wince的...
C中extern和C 中的export
為了訪問其他編譯單元 如另一 檔案 中的變數或物件,對普通型別 包括基本資料類 結構和類 可以利用關鍵字extern,來使用這些變數或物件時 但是對模板型別,則必須在定義這些模板類物件和模板函式時,使用標準c 新增加的關鍵字export 匯出 出口 輸出 例如 extern int n extern...
C中相容C 操作
在c 中加入c 風格的 在編譯的時候,報錯的是必然的.因為不相容.例如,在c中加入c 的namespace namespace cv get window image rectangle coordinates,width and height cvapi cv rect cvgetwindowim...