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(); } }