Freigeben über


XMLNode.BeforeDelete-Ereignis (2007 System)

Aktualisiert: November 2007

Tritt auf, wenn der Benutzer ein XMLNode-Steuerelement aus dem Dokument löscht, bevor das Steuerelement gelöscht wird.

Namespace:  Microsoft.Office.Tools.Word
Assembly:  Microsoft.Office.Tools.Word.v9.0 (in Microsoft.Office.Tools.Word.v9.0.dll)

Syntax

Public Event BeforeDelete As NodeInsertAndDeleteEventHandler

Dim instance As XMLNode
Dim handler As NodeInsertAndDeleteEventHandler

AddHandler instance.BeforeDelete, handler
public event NodeInsertAndDeleteEventHandler BeforeDelete

Hinweise

Wenn der InUndoRedo-Parameter auf true festgelegt ist, sollten Sie den XML-Text im Dokument nicht ändern.

Beispiele

Im folgenden Codebeispiel werden Ereignishandler für das AfterInsert-Ereignis und das BeforeDelete-Ereignis dargestellt. Der Code zeigt ein Meldungsfeld an, bevor ein XMLNode aus einem Dokument gelöscht wird und nachdem einem Dokument ein XMLNode hinzugefügt wurde. Im Beispiel wird außerdem die RemoveChild-Methode verwendet, um einen Knoten zu löschen und das BeforeDelete-Ereignis programmgesteuert auszulösen. In diesem Beispiel wird davon ausgegangen, dass das aktuelle Dokument einen XMLNode mit dem Namen CustomerNode enthält, der über einen untergeordneten Knoten mit dem Namen CustomerDateNode verfügt.

Private Sub XMLNodeInsertAndDelete()
    Me.CustomerNode.RemoveChild(Me.CustomerDateNode.InnerObject)
End Sub

Private Sub XMLNode_BeforeDelete(ByVal sender As Object, _
    ByVal e As Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs) _
    Handles CustomerDateNode.BeforeDelete

    Dim tempNode As Microsoft.Office.Tools.Word.XMLNode = _
        CType(sender, Microsoft.Office.Tools.Word.XMLNode)
    If e.InUndoRedo Then
        MsgBox(tempNode.BaseName & " element is about to be " & _
            "deleted as a result of an undo or redo operation.")
    Else
        MsgBox(tempNode.BaseName & " element is about to be " & _
            "deleted.")
    End If
End Sub

Private Sub XMLNode_AfterInsert(ByVal sender As Object, _
    ByVal e As Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs) _
    Handles CustomerDateNode.AfterInsert

    Dim tempNode As Microsoft.Office.Tools.Word.XMLNode = _
        CType(sender, Microsoft.Office.Tools.Word.XMLNode)

    If e.InUndoRedo Then
        MsgBox(tempNode.BaseName & " element was " & _
            "inserted as a result of an undo or redo operation.")
    Else
        MsgBox(tempNode.BaseName & " element was inserted.")
    End If
End Sub
private void XMLNodeInsertAndDelete()
{
    this.CustomerDateNode.AfterInsert +=
        new Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventHandler(
        XMLNode_AfterInsert);

    this.CustomerDateNode.BeforeDelete +=
        new Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventHandler(
        XMLNode_BeforeDelete);

    this.CustomerNode.RemoveChild(this.CustomerDateNode.InnerObject);
}

void XMLNode_BeforeDelete(object sender, 
    Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs e)
{
    Microsoft.Office.Tools.Word.XMLNode tempNode =
        (Microsoft.Office.Tools.Word.XMLNode)sender;

    if (e.InUndoRedo)
    {
        MessageBox.Show(tempNode.BaseName + " element is about to be " +
            "deleted as a result of an undo or redo operation.");
    }
    else
    {
        MessageBox.Show(tempNode.BaseName + " element is about to be " +
            "deleted.");
    }
}


void XMLNode_AfterInsert(object sender,
    Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs e)
{
    Microsoft.Office.Tools.Word.XMLNode tempNode =
        (Microsoft.Office.Tools.Word.XMLNode)sender;

    if (e.InUndoRedo)
    {
        MessageBox.Show(tempNode.BaseName + " element was " +
            "inserted as a result of an undo or redo operation.");
    }
    else
    {
        MessageBox.Show(tempNode.BaseName + " element was inserted.");
    }
}

Berechtigungen

Siehe auch

Referenz

XMLNode-Klasse

XMLNode-Member

Microsoft.Office.Tools.Word-Namespace