//button click事件调用backgroundWorker
String filter = "";
MainForm.SetMessage(MessageType.INFO, null, "正在为您查询数据,请稍等....");
MainForm.barEditItem_Loading.Visibility = BarItemVisibility.Always;
this.backgroundWorker1.RunWorkerAsync(filter);
以上代码是调用。
以下是相关事件代码:
/// <summary>
/// backgroundWorker1开始
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
//检索数据
e.Result = purchaseOrderController.GetPurchaseOrder(e.Argument.ToString());
}
/// <summary>
/// backgroundWorker1完成
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void backgroundWorker1_RunWorkerCompleted(object sender, System.ComponentModel.RunWorkerCompletedEventArgs e)
{
//处理检索出来的数据并显示到画面
DataTable dataTable = e.Result as DataTable;
gridControl1.DataSource = dataTable;
gridView1.BestFitColumns();
MainForm.SetMessage(MessageType.INFO, null, "查询已完成,共为您查询到"+ dataTable.Rows.Count +"条数据.");
MainForm.barEditItem_Loading.Visibility = BarItemVisibility.Never;
}