Document.XMLBeforeDelete Событие (2007 System)
Обновлен: Ноябрь 2007
Событие возникает при удалении пользователем элемента XML из документа. Если из документа удаляется более одного элемента одновременно (например, при вырезании и вставке XML), событие возникает для каждого удаляемого элемента.
Пространство имен: Microsoft.Office.Tools.Word
Сборка: Microsoft.Office.Tools.Word.v9.0 (в Microsoft.Office.Tools.Word.v9.0.dll)
Синтаксис
'Декларация
Public Event XMLBeforeDelete As DocumentEvents2_XMLBeforeDeleteEventHandler
'Применение
Dim instance As Document
Dim handler As DocumentEvents2_XMLBeforeDeleteEventHandler
AddHandler instance.XMLBeforeDelete, handler
public event DocumentEvents2_XMLBeforeDeleteEventHandler XMLBeforeDelete
Примеры
В приведенном ниже примере кода демонстрируются обработчики событий XMLAfterInsert и XMLBeforeDelete. Перед удалением объекта XMLNode из документа и после добавления объекта XMLNode в документ в данном коде выводится окно сообщения. Чтобы протестировать этот пример кода, следует воспользоваться областью задач Структура XML для добавления элементов XML в документ, затем проверить параметры Отменить ввод и Вернуть ввод в меню Правка. В данном примере предполагается, что текущий документ сопоставляется с допустимой схемой XML.
В этом примере демонстрируется настройка уровня документа.
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.");
}
}
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.