Delegato NodeInsertAndDeleteEventHandler
Rappresenta il metodo che gestisce gli eventi AfterInsert e BeforeDelete di un controllo XMLNode e gli eventi AfterInsert e BeforeDelete di un controllo XMLNodes.
Spazio dei nomi: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)
Sintassi
'Dichiarazione
Public Delegate Sub NodeInsertAndDeleteEventHandler ( _
sender As Object, _
e As NodeInsertAndDeleteEventArgs _
)
public delegate void NodeInsertAndDeleteEventHandler(
Object sender,
NodeInsertAndDeleteEventArgs e
)
Parametri
- sender
Tipo: System.Object
Origine dell’evento.
- e
Tipo: Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs
Oggetto NodeInsertAndDeleteEventArgs contenente i dati relativi all'evento.
Note
Quando si crea un delegato NodeInsertAndDeleteEventHandler, si identifica il metodo che gestirà l'evento. Per associare l'evento al gestore eventi, è necessario aggiungere all'evento un'istanza del delegato. Il gestore eventi viene chiamato ogni volta che si verifica l'evento, finché non viene rimosso il delegato. Per ulteriori informazioni sui delegati, vedere Eventi e delegati.
Esempi
Nell'esempio di codice seguente vengono illustrati i gestori eventi per gli eventi AfterInsert e BeforeDelete. Tali gestori eventi visualizzano una finestra di messaggio prima dell'eliminazione di una classe XMLNode dal documento e dopo l'aggiunta di una classe XMLNode al documento. Nell'esempio viene inoltre utilizzato il metodo RemoveChild per eliminare un nodo e generare l'evento BeforeDelete a livello di codice. In questo esempio si suppone che il documento corrente contenga una classe XMLNode denominata CustomerNode che include un nodo figlio denominato CustomerDateNode.
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.");
}
}