XContainer.Add Method

Definition

Adds the specified content as children to this XContainer.

Overloads

Add(Object)

Adds the specified content as children of this XContainer.

Add(Object[])

Adds the specified content as children of this XContainer.

Examples

The following example creates two XML trees, and then uses this method to add the results of a query to one of them.

XElement srcTree = new XElement("Root",  
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("NewElement", "Content")  
);  
xmlTree.Add(  
    from el in srcTree.Elements()  
    where (int)el >= 3  
    select el  
);  
Console.WriteLine(xmlTree);  
Dim srcTree As XElement = _  
        <Root>  
            <Element1>1</Element1>  
            <Element2>2</Element2>  
            <Element3>3</Element3>  
            <Element4>4</Element4>  
            <Element5>5</Element5>  
        </Root>  
Dim xmlTree As XElement = _   
        <Root>  
            <NewElement>Content</NewElement>  
        </Root>  
xmlTree.Add( _  
    From el In srcTree.Elements _  
    Where CInt(el) >= 3 _  
    Select el)  
Console.WriteLine(xmlTree)  

This example produces the following output:

<Root>  
  <NewElement>Content</NewElement>  
  <Element3>3</Element3>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
</Root>  

Remarks

This method adds the new content after the existing content of the XContainer.

For details about the valid content that can be passed to this function, see Valid Content of XElement and XDocument Objects.

This method will raise the Changed and the Changing events.

Add(Object)

Adds the specified content as children of this XContainer.

public:
 void Add(System::Object ^ content);
public void Add (object content);
public void Add (object? content);
member this.Add : obj -> unit
Public Sub Add (content As Object)

Parameters

content
Object

A content object containing simple content or a collection of content objects to be added.

Examples

The following example creates two XML trees, and then uses this method to add an XElement object to one of them. It also adds the results of a LINQ query to the XML tree.

XElement srcTree = new XElement("Root",  
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
xmlTree.Add(new XElement("NewChild", "new content"));  
xmlTree.Add(  
    from el in srcTree.Elements()  
    where (int)el > 3  
    select el  
);  
// Even though Child9 does not exist in srcTree, the following statement will not  
// throw an exception, and nothing will be added to xmlTree.  
xmlTree.Add(srcTree.Element("Child9"));  
Console.WriteLine(xmlTree);  
Dim srcTree As XElement = _   
        <Root>  
            <Element1>1</Element1>  
            <Element2>2</Element2>  
            <Element3>3</Element3>  
            <Element4>4</Element4>  
            <Element5>5</Element5>  
        </Root>  

Dim xmlTree As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

xmlTree.Add(New XElement("NewChild", "new content"))  
xmlTree.Add( _  
    From el In srcTree.Elements() _  
    Where CInt(el) > 3 _  
    Select el _  
)  
' Even though Child9 does not exist in srcTree, the following statement will not  
' throw an exception, and nothing will be added to xmlTree.  
xmlTree.Add(srcTree.<Child9>)  
Console.WriteLine(xmlTree)  

This example produces the following output:

<Root>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
  <NewChild>new content</NewChild>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
</Root>  

Remarks

This method adds the new content after the existing content of the XContainer.

For details about the valid content that can be passed to this function, see Valid Content of XElement and XDocument Objects.

This method will raise the Changed and the Changing events.

See also

Applies to

Add(Object[])

Adds the specified content as children of this XContainer.

public:
 void Add(... cli::array <System::Object ^> ^ content);
public void Add (params object[] content);
public void Add (params object?[] content);
member this.Add : obj[] -> unit
Public Sub Add (ParamArray content As Object())

Parameters

content
Object[]

A parameter list of content objects.

Examples

The following example creates two XML trees, uses this method to add an XElement object to one of them. It also adds the results of a LINQ query to the XML tree.

XElement srcTree = new XElement("Root",  
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
xmlTree.Add(new XElement("NewChild", "new content"));  
xmlTree.Add(  
    from el in srcTree.Elements()  
    where (int)el > 3  
    select el  
);  
// Even though Child9 does not exist in srcTree, the following statement will not  
// throw an exception, and nothing will be added to xmlTree  
xmlTree.Add(srcTree.Element("Child9"));  
Console.WriteLine(xmlTree);  
Dim srcTree As XElement = _   
        <Root>  
            <Element1>1</Element1>  
            <Element2>2</Element2>  
            <Element3>3</Element3>  
            <Element4>4</Element4>  
            <Element5>5</Element5>  
        </Root>  

Dim xmlTree As XElement = _  
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

xmlTree.Add(New XElement("NewChild", "new content"))  
xmlTree.Add( _  
    From el In srcTree.Elements() _  
    Where CInt(el) > 3 _  
    Select el _  
)  
' Even though Child9 does not exist in srcTree, the following statement will not  
' throw an exception, and nothing will be added to xmlTree  
xmlTree.Add(srcTree.<Child9>)  
Console.WriteLine(xmlTree)  

This example produces the following output:

<Root>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
  <NewChild>new content</NewChild>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
</Root>  

Remarks

This method adds the new content after the existing content of the XContainer.

For details about the valid content that can be passed to this function, see Valid Content of XElement and XDocument Objects.

This method will raise the Changed and the Changing events.

See also

Applies to