NodeInsertAndDeleteEventHandler-Delegat
Stellt die Methode dar, die das AfterInsert-Ereignis und das BeforeDelete-Ereignis eines XMLNode-Steuerelements sowie das AfterInsert-Ereignis und das BeforeDelete-Ereignis eines XMLNodes-Steuerelements behandelt.
Namespace: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)
Syntax
'Declaration
Public Delegate Sub NodeInsertAndDeleteEventHandler ( _
sender As Object, _
e As NodeInsertAndDeleteEventArgs _
)
public delegate void NodeInsertAndDeleteEventHandler(
Object sender,
NodeInsertAndDeleteEventArgs e
)
Parameter
- sender
Typ: System.Object
Die Quelle des Ereignisses.
- e
Typ: Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs
Ein NodeInsertAndDeleteEventArgs, das die Ereignisdaten enthält.
Hinweise
Beim Erstellen eines NodeInsertAndDeleteEventHandler-Delegaten bestimmen Sie die Methode für die Ereignisbehandlung. Um das Ereignis mit dem Ereignishandler zu verknüpfen, fügen Sie dem Ereignis eine Instanz des Delegaten hinzu. Der Ereignishandler wird bei jedem Auftreten des Ereignisses aufgerufen, bis Sie den Delegaten entfernen.
Beispiele
Im folgenden Codebeispiel werden Ereignishandler für das AfterInsert-Ereignis und das BeforeDelete-Ereignis dargestellt. Diese Ereignishandler zeigen ein Meldungsfeld an, bevor ein XMLNode aus dem Dokument gelöscht wird und nachdem dem 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.");
}
}