英語で読む

次の方法で共有


XmlNode.ReplaceChild(XmlNode, XmlNode) メソッド

定義

子ノード oldChildnewChild ノードに置き換えます。

C#
public virtual System.Xml.XmlNode ReplaceChild (System.Xml.XmlNode newChild, System.Xml.XmlNode oldChild);

パラメーター

newChild
XmlNode

子リストに入れる新しいノード。

oldChild
XmlNode

リスト内の置換されるノード。

戻り値

XmlNode

置き換えられたノード。

例外

このノードは、newChild ノードの型の子ノードが許可されない型です。

newChild がこのノードの先祖です。

newChild は、このノードを作成したドキュメントとは異なるドキュメントから作成されました。

このノードは読み取り専用です。

oldChild がこのノードの子ではありません。

次の使用例は、XML ドキュメントのタイトル要素を置き換えます。

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;

    //Create a new title element.
    XmlElement elem = doc.CreateElement("title");
    elem.InnerText="The Handmaid's Tale";

    //Replace the title element.
    root.ReplaceChild(elem, root.FirstChild);

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

注釈

既に newChild ツリー内にある場合は、最初に削除されます。

別の newChild ドキュメントから作成された場合は、ノードを現在のドキュメントにインポートするために使用 XmlDocument.ImportNode できます。 その後、インポートされたノードをメソッドに ReplaceChild 渡すことができます。

注意 (継承者)

派生クラスでオーバーライドする ReplaceChild 場合、イベントを正しく発生させるには、基底クラスのメソッドを ReplaceChild 呼び出す必要があります。

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1
UWP 10.0

こちらもご覧ください