在导出excel时候弹出对话框选择保存路径
private void ExportExcel()
{
Invoker inv = new Invoker();
inv.InvokeDialog.FileName = name;
inv.InvokeDialog.DefaultExt = "xls";
inv.InvokeDialog.Filter = "Excel文件|*.xls";
inv.Invoke();//在此处应该会弹出保存对话框,但是在应用程序中对话框不显示,我把应用程序缩小到任务栏,然后打开任务管理器后保存对话框就弹了出来,事实上这个进程已经存在,但就是显示不出来,是什么原因啊?
有什么解决办法,或者更好的高效的弹出保存对话框导出Excel的的方法,最好贴出代码来!!
}
public class Invoker
{
public SaveFileDialog InvokeDialog;
private Thread InvokeThread;
public DialogResult InvokeResult;
public Invoker()
{
InvokeDialog = new SaveFileDialog();
InvokeThread = new Thread(new ThreadStart(InvokeMethod));
InvokeThread.SetApartmentState(ApartmentState.STA);
InvokeResult = DialogResult.None;
}
public DialogResult Invoke()
{
InvokeThread.Start();
InvokeThread.Join();
return InvokeResult;
}
private void InvokeMethod()
{
InvokeResult = InvokeDialog.ShowDialog();
}
}