1. 程式人生 > >C#中delegate用法(帶引數)

C#中delegate用法(帶引數)

近期寫了幾個C#客戶端軟體,其中,上傳資料時另開執行緒,同時要更新UI,跨執行緒操作,用到委託。用法如下:

//委託
public delegate void delegate1(string str);

//方法
private void showUpdateProgress(string content)
{
    //...
	rtbxUploadLog.Text += content;
}

//呼叫
delegate1 change = new delegate1(showUpdateProgress);   

string resp = upload();
if (resp.Equals("ok"))
{
   this.BeginInvoke(change, "上傳完成");
}else{
   this.BeginInvoke(change, "上傳失敗");
}


委託的概念,剛接觸有些難以理解,多加練習就能熟悉了。