次の方法で共有


XMLNodes.BeforeDelete イベント (2007 System)

更新 : 2007 年 11 月

ユーザーが、コレクションから Microsoft.Office.Interop.Word.XMLNode または子孫のノードを削除するとき、コントロールが削除される前に発生します。

名前空間 :  Microsoft.Office.Tools.Word
アセンブリ :  Microsoft.Office.Tools.Word.v9.0 (Microsoft.Office.Tools.Word.v9.0.dll 内)

構文

'宣言
Public Event BeforeDelete As NodeInsertAndDeleteEventHandler
'使用
Dim instance As XMLNodes
Dim handler As NodeInsertAndDeleteEventHandler

AddHandler instance.BeforeDelete, handler
public event NodeInsertAndDeleteEventHandler BeforeDelete

解説

InUndoRedo パラメータが true の場合は、文書内の XML を変更しないでください。

AfterInsert イベントと BeforeDelete イベントのイベント ハンドラを次のコード例に示します。このコードは、Microsoft.Office.Interop.Word.XMLNode が文書から削除される前と、Microsoft.Office.Interop.Word.XMLNode が文書に追加された後に、メッセージ ボックスを表示します。また、Add メソッドを使用して新しい要素を XMLNodes コレクションの指定の範囲に追加し、AfterInsert イベントをプログラムから発生させます。この例では、現在の文書に、SampleNode という名前の XMLNode が親である、SampleInsertNodes という名前の XMLNodes コレクションが含まれていることが前提となっています。

Private Sub XMLNodeAddAndDelete()
    Dim range1 As Object = Me.SampleInsertNodes(1).Range

    ' This will raise the AfterInsert event.
    Dim node1 As Word.XMLNode = _
        Me.SampleInsertNodes.Add("MemoFrom", _
        Me.SampleNode.NamespaceURI, range1)
End Sub

Private Sub SampleInsertNodes_AfterInsert(ByVal sender As Object, _
    ByVal e As Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs) _
    Handles SampleInsertNodes.AfterInsert

    If e.InUndoRedo Then
        MessageBox.Show("A child element of SampleInsertNodes was " & _
            "inserted as a result of an undo or redo operation.")
    Else
        MessageBox.Show("A child element of SampleInsertNodes " & _
            "was inserted.")
    End If
End Sub

Private Sub SampleInsertNodes_BeforeDelete(ByVal sender As Object, _
    ByVal e As Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs) _
    Handles SampleInsertNodes.BeforeDelete

    If e.InUndoRedo Then
        MessageBox.Show("A child element of SampleInsertNodes " & _
            "is about to be deleted as a result of an undo or " & _
            "redo operation.")
    Else
        MessageBox.Show("A child element of SampleInsertNodes " & _
        "is about to be deleted.")
    End If
End Sub
private void XMLNodeAddAndDelete()
{
    object range1 = this.SampleInsertNodes[1].Range;

    this.SampleInsertNodes.AfterInsert +=
        new Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventHandler(
        SampleInsertNodes_AfterInsert);

    this.SampleInsertNodes.BeforeDelete +=
        new Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventHandler(
        SampleInsertNodes_BeforeDelete);

    // This will raise the AfterInsert event.
    Word.XMLNode node1 = this.SampleInsertNodes.Add("MemoFrom",
        this.SampleNode.NamespaceURI, ref range1);
}

void SampleInsertNodes_AfterInsert(object sender,
    Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs e)
{
    if (e.InUndoRedo)
    {
        MessageBox.Show("A child element of SampleInsertNodes was " +
            "inserted as a result of an undo or redo operation.");
    }
    else
    {
        MessageBox.Show("A child element of SampleInsertNodes " +
            "was inserted.");
    }
}

void SampleInsertNodes_BeforeDelete(object sender,
    Microsoft.Office.Tools.Word.NodeInsertAndDeleteEventArgs e)
{
    if (e.InUndoRedo)
    {
        MessageBox.Show("A child element of SampleInsertNodes " +
            "is about to be deleted as a result of an undo or " +
            "redo operation.");
    }
    else
    {
        MessageBox.Show("A child element of SampleInsertNodes " +
            "is about to be deleted.");
    }
}

アクセス許可

  • 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

参照

XMLNodes クラス

XMLNodes メンバ

Microsoft.Office.Tools.Word 名前空間