直接使用OpenFileDialog时,有时候会导致程序直接崩溃,所以需要进行处理
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = $"请选择【{type}】Excel文件";
ofd.Filter = "Excel文件| *.xlsx;*.xls";
ofd.ValidateNames = true; //文件有效性验证ValidateNames,验证用户输入是否是一个有效的Windows文件名
ofd.CheckFileExists = true; //验证路径有效性
ofd.CheckPathExists = true; //验证文件有效性
ofd.InitialDirectory = AppDomain.CurrentDomain.BaseDirectory;
DialogResult result = DialogResult.None;
Thread invokeThread = new Thread(()=>
{result = ofd.ShowDialog();
});
invokeThread.SetApartmentState(ApartmentState.STA);
invokeThread.Start();
invokeThread.Join();
if (result != DialogResult.OK)
{BaseTools.ShowMsg("友情提示", "请选择文件!");return;
}