Share via


XMLNodes.Add(String, String, Object) Method

Definition

Gets a XMLNode object that represents a newly added element.

public Microsoft.Office.Interop.Word.XMLNode Add (string Name, string Namespace, ref object Range);
abstract member Add : string * string * obj -> Microsoft.Office.Interop.Word.XMLNode
Public Function Add (Name As String, Namespace As String, Optional ByRef Range As Object) As XMLNode

Parameters

Name
String

The name of the element in the XML schema designated in the Namespace parameter. Because XML is case-sensitive, the spelling of the element specified in the Name parameter must be exactly as it appears in the schema. If it does not match any of the element names in the schema specified in the Namespace parameter, an error is displayed.

Namespace
String

The name of the schema as defined in the schema. The Namespace parameter is case-sensitive and must be spelled exactly as it appears in the schema. If the specified namespace cannot be found in any of the schemas attached to the document, an error is displayed.

Range
Object

The range to which you want to apply the element. The default is to place the element tags at the insertion point or around the selection if a text is selected.

Returns

A XMLNode object that represents a newly added element.

Examples

The following code example demonstrates event handlers for the AfterInsert and BeforeDelete events. The code displays a message box before a Microsoft.Office.Interop.Word.XMLNode is deleted from the document and after a Microsoft.Office.Interop.Word.XMLNode is added to the document. The example also uses the Add method to add a new element to an XMLNodes collection at a specified range and programmatically raise the AfterInsert event. This example assumes that the current document contains an XMLNodes collection named SampleInsertNodes, which has a parent XMLNode named SampleNode.

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.");
    }
}
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)


    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)


    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

Remarks

Optional Parameters

For information on optional parameters, see Optional Parameters in Office Solutions.

Applies to