C#Excel Interop - 在调用Worksheet.ExportAsFixedFormat时禁止"发布"对话框

bjo*_*nno 22 .net c# excel interop export

我正在使用Excel Interop打开xlsx文件并将其另存为pdf文档.在调用"ExportAsFixedFileFormat"方法时,将显示标题为"Publishing"的对话框以指示进度.如何禁止或隐藏此对话框?我在其他论坛上看到了一些没有令人满意的解决方案的类似问题,但希望有人从那时起就解决了这个问题.

在此输入图像描述

码:

Application application = new Application();
application.DisplayAlerts = false; // <- No effect
application.Visible = false; // <- No effect
application.ScreenUpdating = false; // <- No effect
application.UserControl = false; // <- No effect
application.Workbooks.Open(path, Type.Missing, true);
application.DisplayDocumentActionTaskPane = false; // <- No effect
application.Worksheets[1].ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, path);
Run Code Online (Sandbox Code Playgroud)

jmv*_*dad 0

在BackgroundWorker上处理它怎么样?这不会抛出COMEXCEPTION。我在单击按钮时尝试了此代码,它可以在不显示progress dialog.

var worker = new BackgroundWorker();
worker.DoWork += (o, args) =>
{
    var path = @"D:\sample.xlsx";
    var application = new Microsoft.Office.Interop.Excel.Application();
    application.Workbooks.Open(path,
        Type.Missing, true);
    application.Worksheets[1].ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, path);
};
worker.RunWorkerAsync();
Run Code Online (Sandbox Code Playgroud)