Document.BeforeSave Event


Occurs before the document is saved.

public event Microsoft.Office.Tools.Word.SaveEventHandler BeforeSave;


The following code example displays a message before the document is saved that asks whether you want to save the document. This example is for an application-level add-in.

private void DocumentBeforeSave()
    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.BeforeSave += new Microsoft.Office.Tools.Word.SaveEventHandler(ThisDocument_BeforeSave);

void ThisDocument_BeforeSave(object sender, Microsoft.Office.Tools.Word.SaveEventArgs e)
    if (System.Windows.Forms.MessageBox.Show("Do you want to save the document?", "BeforeSave",
        System.Windows.Forms.MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
        e.Cancel = true;
Private Sub DocumentBeforeSave()
    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    AddHandler vstoDoc.BeforeSave, AddressOf ThisDocument_BeforeSave
End Sub

Private Sub ThisDocument_BeforeSave(ByVal sender As Object, ByVal e As Microsoft.Office.Tools.Word.SaveEventArgs)
    If System.Windows.Forms.MessageBox.Show( _
        "Do you want to save the document?", "BeforeSave", _
        System.Windows.Forms.MessageBoxButtons.YesNo) = System.Windows.Forms.DialogResult.No Then
        e.Cancel = True
    End If
End Sub


To prevent the document from being saved, set the Cancel argument of the provided CancelEventArgs object to true.

Applies to