XmlNode.RemoveChild Method (System.Xml)

Switch View :
ScriptFree
.NET Framework Class Library
XmlNode.RemoveChild Method

Removes specified child node.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)
Syntax

Visual Basic
Public Overridable Function RemoveChild ( _
	oldChild As XmlNode _
) As XmlNode
C#
public virtual XmlNode RemoveChild(
	XmlNode oldChild
)
Visual C++
public:
virtual XmlNode^ RemoveChild(
	XmlNode^ oldChild
)
F#
abstract RemoveChild : 
        oldChild:XmlNode -> XmlNode 
override RemoveChild : 
        oldChild:XmlNode -> XmlNode 

Parameters

oldChild
Type: System.Xml.XmlNode
The node being removed.

Return Value

Type: System.Xml.XmlNode
The node removed.
Exceptions

Exception Condition
ArgumentException

The oldChild is not a child of this node. Or this node is read-only.

Remarks

Notes to Inheritors

When overriding RemoveChild in a derived class, in order for events to be raised correctly, you must call the RemoveChild method of the base class.

Examples

The following example removes a node from the XML document.

Visual Basic

Option Explicit
Option Strict

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample

    Public Shared Sub Main()
        Dim doc As New XmlDocument()
        doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")

        Dim root As XmlNode = doc.DocumentElement

        'Remove the title element.
        root.RemoveChild(root.FirstChild)

        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub 'Main 
End Class 'Sample


C#

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "</book>");

    XmlNode root = doc.DocumentElement;

    //Remove the title element.
    root.RemoveChild(root.FirstChild);

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);

  }
}


Visual C++

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<book genre='novel' ISBN='1-861001-57-5'>"
   "<title>Pride And Prejudice</title>"
   "</book>" );
   XmlNode^ root = doc->DocumentElement;

   //Remove the title element.
   root->RemoveChild( root->FirstChild );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}



Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also

Reference

Community Content

Freeman
Performance: constant or iteration?
I would like to know if the method is constant in time or depends on the number of childs.