ContextChangeEventHandler - делегат
Представляет метод, обрабатывающий события Select, Deselect, ContextEnter и ContextLeave объекта XMLNode, а также события ContextEnter, ContextLeave, Select и Deselect объекта XMLNodes.
Пространство имен: Microsoft.Office.Tools.Word
Сборка: Microsoft.Office.Tools.Word (в Microsoft.Office.Tools.Word.dll)
Синтаксис
'Декларация
Public Delegate Sub ContextChangeEventHandler ( _
sender As Object, _
e As ContextChangeEventArgs _
)
public delegate void ContextChangeEventHandler(
Object sender,
ContextChangeEventArgs e
)
Параметры
- sender
Тип: System.Object
Источник события.
- e
Тип: Microsoft.Office.Tools.Word.ContextChangeEventArgs
Объект ContextChangeEventArgs, содержащий данные события.
Заметки
При создании делегата ContextChangeEventHandler указывается метод обработки события. Чтобы связать событие с обработчиком событий, в событие нужно добавить экземпляр делегата. Обработчик событий вызывается при любом возникновении события, пока не удален делегат. Дополнительные сведения о делегатах см. в разделе События и делегаты.
Примеры
В приведенном ниже примере кода демонстрируются обработчики событий XMLNode.Select, XMLNode.Deselect, XMLNode.ContextEnter и XMLNode.ContextLeave. При возникновении событий XMLNode.Select и XMLNode.Deselect обработчики событий добавляют к границам выделения двойные линии или удаляют такие линии в зависимости от события. При возникновении событий XMLNode.ContextEnter и XMLNode.ContextLeave обработчики событий выводят сообщения с именами вновь выделенного и ранее выделенного узлов. В данном примере предполагается, что текущий документ содержит узел XMLNode с именем CustomerNode.
Private Sub CustomerNode_Select(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ContextChangeEventArgs) _
Handles CustomerNode.Select
e.Selection.Borders.OutsideLineStyle = _
Word.WdLineStyle.wdLineStyleDouble
End Sub
Private Sub CustomerNode_Deselect(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ContextChangeEventArgs) _
Handles CustomerNode.Deselect
e.Selection.Borders.OutsideLineStyle = _
Word.WdLineStyle.wdLineStyleNone
End Sub
Private Sub CustomerNode_ContextEnter(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ContextChangeEventArgs) _
Handles CustomerNode.ContextEnter
MsgBox("You entered the node '" & e.NewXMLNode.BaseName & "'.")
End Sub
Private Sub CustomerNode_ContextLeave(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ContextChangeEventArgs) _
Handles CustomerNode.ContextLeave
MsgBox("You left the node '" & e.OldXMLNode.BaseName & "'.")
End Sub
private void XMLNodeSelections()
{
this.CustomerNode.ContextEnter +=
new Microsoft.Office.Tools.Word.ContextChangeEventHandler(
CustomerNode_ContextEnter);
this.CustomerNode.ContextLeave +=
new Microsoft.Office.Tools.Word.ContextChangeEventHandler(
CustomerNode_ContextLeave);
this.CustomerNode.Select +=
new Microsoft.Office.Tools.Word.ContextChangeEventHandler(
CustomerNode_Select);
this.CustomerNode.Deselect +=
new Microsoft.Office.Tools.Word.ContextChangeEventHandler(
CustomerNode_Deselect);
}
void CustomerNode_Select(object sender,
Microsoft.Office.Tools.Word.ContextChangeEventArgs e)
{
e.Selection.Borders.OutsideLineStyle =
Word.WdLineStyle.wdLineStyleDouble;
}
void CustomerNode_Deselect(object sender,
Microsoft.Office.Tools.Word.ContextChangeEventArgs e)
{
e.Selection.Borders.OutsideLineStyle =
Word.WdLineStyle.wdLineStyleNone;
}
void CustomerNode_ContextEnter(object sender,
Microsoft.Office.Tools.Word.ContextChangeEventArgs e)
{
MessageBox.Show("You entered the node '" +
e.NewXMLNode.BaseName + "'.");
}
void CustomerNode_ContextLeave(object sender,
Microsoft.Office.Tools.Word.ContextChangeEventArgs e)
{
MessageBox.Show("You left the node '" +
e.OldXMLNode.BaseName + "'.");
}