关于C# MessageBox.Show的问题
我在C#中写了一个提示框,提示并选择是否向数据库里面导入数据,但是每次导入的时候都是提示框点击确定以后,总是卡主,等导入完成以后,提示框才消失,这是什么原因啊?能不能那位兄弟帮忙解决一下啊
if (DialogResult.OK == MessageBox.Show("你导入的是" + comboBox1.Text, "提示信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning))
{
read();//此处执行将TXT文本数据导入数据库
}
------解决方案--------------------if (DialogResult.OK == MessageBox.Show("你导入的是" + comboBox1.Text, "提示信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning))
{
Application.DoEvents();
read();//此处执行将TXT文本数据导入数据库
}
------解决方案--------------------用异步线程完成数据导入,腾出UI线程。异步线程可参考BackgroundWorker组件。
if (DialogResult.OK == MessageBox.Show("你导入的是" + comboBox1.Text, "提示信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning))
{
//read();//此处执行将TXT文本数据导入数据库
backgroundWorker1.RunWorkerAsync();
}
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) {
read();//此处执行将TXT文本数据导入数据库
}
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e){
//显示进度条,表明数据处理情况
}
private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e){
//导入数据完成
}