読み込み中にメッセージテキストボックスを表示する以下のコードがあります:
private void button3_Click_1(object sender, EventArgs e)
{
int i;
BackgroundWorker bw = new BackgroundWorker();
bw.WorkerReportsProgress = true;
bw.WorkerSupportsCancellation = true;
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.ProgressChanged += new ProgressChangedEventHandler(bw_ProgressChanged);
bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
msgForm = new Form2(); //Form2 is showing a message "Please Wait..."
try
{
bw.RunWorkerAsync(comboBox15.Text);
msgForm.StartPosition = FormStartPosition.CenterParent;
msgForm.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
void bw_DoWork(object sender, DoWorkEventArgs e)
{
string PrtAdd = e.Argument.ToString();
Loading(PrtAdd); //This is the function of my loading.
}
void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
msgForm.Close();
}
読み込みには 2 ~ 3 分かかることがあります。そのため、静的なメッセージ ボックスを表示するだけでは、ユーザーは私のプログラムがどこかでハングしていると考えるでしょう。
読み込み中に進行状況バーを追加して、これを改善したいと思います。皆さん、私を助けてくれますか?