private void buttonSave_Click(object sender, EventArgs e) { if (dataList.Count == 0) { MessageBox.Show("無資料儲存"); return; } SaveFileDialog dlg = new SaveFileDialog(); dlg.Filter = "sav|*.sav"; dlg.Title = "Save an Image File"; if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK && dlg.FileName != "") { fileName = dlg.FileName; cpSave = new CircularProgress(); cpSave.Dock = DockStyle.Fill; this.Controls.Add(cpSave); cpSave.BringToFront(); cpSave.Start(); BackgroundWorker bwLoading = new BackgroundWorker(); bwLoading.WorkerSupportsCancellation = true; bwLoading.DoWork += new DoWorkEventHandler(bwSave_Run); bwLoading.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bwSave_Completed); bwLoading.RunWorkerAsync(); } }
private void bwSave_Completed(Object sender, RunWorkerCompletedEventArgs e) { if (saveSuccess == 1) { MessageBox.Show("儲存完成"); } if (cpSave != null) { cpSave.Stop(); this.Controls.Remove(cpSave); cpSave = null; } }