Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用word automation打开的文档始终显示“模板保存”对话框_C#_Ms Word_Automation - Fatal编程技术网

C# 使用word automation打开的文档始终显示“模板保存”对话框

C# 使用word automation打开的文档始终显示“模板保存”对话框,c#,ms-word,automation,C#,Ms Word,Automation,我们有使用模板创建的文档。在我们的应用程序中,可以查看文档,这将启动word自动化打开方法,如下所示 当用户关闭word时,将始终显示一个保存对话框,以保存对.dotx?所做的更改,即使未对主文档进行任何更改,也会出现这种情况。模板部分从未接触过 如何停止显示此对话框 代码: 保存文档或在关闭文档时激发的代码在哪里?您需要明确告诉它是否显示对话框,例如,签出此帖子最初保存文档的过程不相关-重要的是文档最初是使用模板创建的。关于关闭文档,在本例中,这不是通过编程完成的,而是由用户在完成查看后完成的

我们有使用模板创建的文档。在我们的应用程序中,可以查看文档,这将启动word自动化打开方法,如下所示

当用户关闭word时,将始终显示一个保存对话框,以保存对.dotx?所做的更改,即使未对主文档进行任何更改,也会出现这种情况。模板部分从未接触过

如何停止显示此对话框

代码:


保存文档或在关闭文档时激发的代码在哪里?您需要明确告诉它是否显示对话框,例如,签出此帖子最初保存文档的过程不相关-重要的是文档最初是使用模板创建的。关于关闭文档,在本例中,这不是通过编程完成的,而是由用户在完成查看后完成的。这是当保存弹出窗口出现,我试图摆脱。
public class WordHelper
{
    private Word._Application _app = null;

    public WordHelper(bool visible = false, bool maximize = false)
    {
        try
        {
            _app = new Word.Application();
            _app.Application.Visible = visible;
            if (maximize)
                _app.Application.WindowState = Word.WdWindowState.wdWindowStateMaximize;
            else
                _app.Application.WindowState = Word.WdWindowState.wdWindowStateNormal;

            _app.Application.Caption = Guid.NewGuid().ToString().ToLowerInvariant().Trim(); 
            _pid = UtilityHelper.GetPidByWindowTitle(_app.Application.Caption);
        }
        catch (Exception ex)
        {
            ScreenHelper.DisplayException(ex, "Error on launch of Word document generation", this.GetType().Name, new StackFrame().GetMethod().Name);
        }
    }

    public void OpenDocument(string fileName, bool readOnly, string readPassword, string writePassword)
    {
        try
        {
            if (!string.IsNullOrWhiteSpace(fileName))
            {
                _app.Documents.Open(
                    fileName,
                    Type.Missing,
                    readOnly,
                    false,
                    readPassword,
                    Type.Missing,
                    Type.Missing,
                    writePassword,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing,
                    Type.Missing);
                _app.Application.Caption = fileName;
            }
        }
        catch (Exception ex)
        {
            throw new Exception("Error in OpenDocument" + ex.Message);
        }
    }
}