コード例 #1
0
        public WorkerControl()
        {
            InitializeComponent();
            state     = new ToolStripLabel();
            timeSpent = new ToolStripLabel("done (0s 00ms)")
            {
                Alignment = ToolStripItemAlignment.Right
            };
            progress = new ToolStripProgressBar {
                Alignment = ToolStripItemAlignment.Right, Maximum = 100, Minimum = 0, Step = 1
            };
            progress.UpdateVisible(false);
            state.UpdateText(ReadyText);

            works  = new Queue <WorkArgument>();
            worker = new BackgroundWorker();
            worker.WorkerReportsProgress      = true;
            worker.WorkerSupportsCancellation = true;

            worker.DoWork             += WorkerDoWork;
            worker.ProgressChanged    += WorkerProgressChanged;
            worker.RunWorkerCompleted += WorkerRunWorkerCompleted;
            AddToolStripItems();
            _shouldStop = false;
        }