Zdarzenie DocumentBase.XMLBeforeDelete
Występuje, gdy użytkownik usuwa XML element z dokumentu.Jeśli więcej niż jeden element zostanie usunięty z dokumentu w tym samym czasie (na przykład, gdy metodą wycinania i wklejania XML), zdarzenie jest wywoływane dla każdego elementu, który zostanie usunięty.
Przestrzeń nazw: Microsoft.Office.Tools.Word
Zestaw: Microsoft.Office.Tools.Word.v4.0.Utilities (w Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
Składnia
'Deklaracja
Public Event XMLBeforeDelete As DocumentEvents2_XMLBeforeDeleteEventHandler
public event DocumentEvents2_XMLBeforeDeleteEventHandler XMLBeforeDelete
Przykłady
Poniższy przykład kodu demonstruje obsługi zdarzeń XMLAfterInsert i XMLBeforeDelete zdarzenia.Ten kod wyświetla komunikat przed XMLNode skreśla się z dokumentu i po XMLNode jest dodawane do dokumentu.Aby przetestować ten przykład kodu, należy użyć Struktury XML okienko zadań, aby dodać elementy XML do dokumentu, a następnie eksperymentować z Cofnij wpisywanie i Wykonaj ponownie wpisywanie opcje na edytować menu.W tym przykładzie założono, że bieżący dokument jest mapowany do jest prawidłowym schematem XML.Aby wykorzystać ten przykład, należy uruchomić go z klasy ThisDocument w projekcie na poziomie dokumentu.
Private Sub DocumentXMLBeforeAndAfterInsert()
AddHandler Me.XMLAfterInsert, AddressOf ThisDocument_XMLAfterInsert
AddHandler Me.XMLBeforeDelete, AddressOf ThisDocument_XMLBeforeDelete
End Sub
Private Sub ThisDocument_XMLBeforeDelete(ByVal DeletedRange As Word.Range, ByVal OldXMLNode As Word.XMLNode, ByVal InUndoRedo As Boolean)
If InUndoRedo Then
MessageBox.Show(OldXMLNode.BaseName & " element is about to be deleted as a result" _
& " of an undo or redo operation.")
Else
MessageBox.Show(OldXMLNode.BaseName & " element is about to be deleted.")
End If
End Sub
Private Sub ThisDocument_XMLAfterInsert(ByVal NewXMLNode As Word.XMLNode, ByVal InUndoRedo As Boolean)
If InUndoRedo Then
MessageBox.Show(NewXMLNode.BaseName & " element was " & "inserted as a result " _
& "of an undo or redo operation.")
Else
MessageBox.Show(NewXMLNode.BaseName & " element was inserted.")
End If
End Sub
private void DocumentXMLBeforeAndAfterInsert()
{
this.XMLAfterInsert +=
new Word.DocumentEvents2_XMLAfterInsertEventHandler(
ThisDocument_XMLAfterInsert);
this.XMLBeforeDelete +=
new Word.DocumentEvents2_XMLBeforeDeleteEventHandler(
ThisDocument_XMLBeforeDelete);
}
void ThisDocument_XMLBeforeDelete(Word.Range DeletedRange,
Word.XMLNode OldXMLNode, bool InUndoRedo)
{
if (InUndoRedo)
{
MessageBox.Show(OldXMLNode.BaseName +
" element is about to be deleted as a result" +
" of an undo or redo operation.");
}
else
{
MessageBox.Show(OldXMLNode.BaseName +
" element is about to be deleted.");
}
}
void ThisDocument_XMLAfterInsert(Word.XMLNode NewXMLNode,
bool InUndoRedo)
{
if (InUndoRedo)
{
MessageBox.Show(NewXMLNode.BaseName + " element was " +
"inserted as a result of an undo or redo operation.");
}
else
{
MessageBox.Show(NewXMLNode.BaseName + " element was inserted.");
}
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Używanie bibliotek pochodzących z częściowo zaufanego kodu.