frmworkersimple.cs

来自「Microsoft Mobile Development Handbook的代码」· CS 代码 · 共 40 行

CS
40
字号
using System;
using System.ComponentModel;
using System.Windows.Forms;

namespace CodeForChapter11cs
{
  public partial class frmWorkerSimple : Form
  {
    public frmWorkerSimple()
    {
      InitializeComponent();
    }

    BackgroundWorker bw;
    private void menuItem1_Click(object sender, EventArgs e)
    {
      label2.Text = "will kick it off";

      bw = new BackgroundWorker(this);
      bw.DoWork += new DoWorkEventHandler(bw_DoWork);
      bw.RunWorkerCompleted+=new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);

      bw.RunWorkerAsync(textBox1.Text);
    }

    void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
    {
      // can touch UI. Thread communicates to UI. We don't have to Control.Invoke explicitly.
      label2.Text = e.Result.ToString();
    }

    void bw_DoWork(object sender, DoWorkEventArgs e)
    {
      // do time consuming work
      System.Threading.Thread.Sleep(3000);

      e.Result = "finished :) " + e.Argument.ToString();  // could assign any other object
    }
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?