我想在函数
中添加加载表单private async void Test()
{
// 1, show loading form
await DoTest();
//2, close loading form
}
加载表单需要阻止主表单,首先,我尝试运行表单ShowDialog()
,但它会停止以下函数
这样做最好的主意是什么?
我的最终解决方案:
private async void Test()
{
// 1, show loading form
var loadingScreen = new LoadingForm();
Task.Factory.StartNew(delegate
{
Invoke((Action)delegate
{
loadingScreen.ShowDialog(App.Views.Forms.RobotActiveView);
});
});
await DoTest();
//2, close loading form
Invoke((Action)delegate
{
loadingScreen.Close();
});
}
答案 0 :(得分:1)
显示加载表单并禁用当前表单。
this.Enabled = false;
var loadingForm = new LoadingForm();
loadingForm.Show();
...
loadingForm.Close();
this.Enabled = true;