XNode.ReplaceWith XNode.ReplaceWith XNode.ReplaceWith XNode.ReplaceWith Method

정의

이 노드를 지정된 콘텐츠로 바꿉니다.Replaces this node with the specified content.

오버로드

ReplaceWith(Object) ReplaceWith(Object) ReplaceWith(Object) ReplaceWith(Object)

이 노드를 지정된 콘텐츠로 바꿉니다.Replaces this node with the specified content.

ReplaceWith(Object[]) ReplaceWith(Object[]) ReplaceWith(Object[]) ReplaceWith(Object[])

이 노드를 지정된 콘텐츠로 바꿉니다.Replaces this node with the specified content.

예제

다음 예제에서는이 메서드를 사용 하 여 다른 내용 노드의 내용을 바꿉니다.The following example uses this method to replace the contents of a node with different content.

XElement xmlTree = new XElement("Root",  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XElement("Child3", "child3 content"),  
    new XElement("Child4", "child4 content"),  
    new XElement("Child5", "child5 content")  
);  
XElement child3 = xmlTree.Element("Child3");  
child3.ReplaceWith(  
    new XElement("NewChild", "new content")  
);  
Console.WriteLine(xmlTree);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child1>child1 content</Child1>  
            <Child2>child2 content</Child2>  
            <Child3>child3 content</Child3>  
            <Child4>child4 content</Child4>  
            <Child5>child5 content</Child5>  
        </Root>  

Dim child3 As XElement = xmlTree.<Child3>(0)  
child3.ReplaceWith(<NewChild>new content</NewChild>)  
Console.WriteLine(xmlTree)  

이 예제는 다음과 같은 출력을 생성합니다.This example produces the following output:

<Root>  
  <Child1>child1 content</Child1>  
  <Child2>child2 content</Child2>  
  <NewChild>new content</NewChild>  
  <Child4>child4 content</Child4>  
  <Child5>child5 content</Child5>  
</Root>  

설명

이 메서드에 전달 될 수 있는 유효한 콘텐츠에 대 한 자세한 내용은 참조 하세요 유효한 콘텐츠 XElement 및 XDocument 개체합니다.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

이 메서드를 발생 시킵니다 합니다 Changed 하며 Changing 이벤트입니다.This method will raise the Changed and the Changing events.

합니다 XContainer 단일 연결 목록으로 자식 노드를 저장 XNode 개체입니다.The XContainer stores its child nodes as a singly-linked list of XNode objects. 즉는 ReplaceWith 메서드는 부모 컨테이너에서 직접 자식 노드의 목록을 통과 해야 합니다.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. 따라서이 메서드를 사용 하 여 성능이 달라질 수 있습니다.Therefore, using this method might affect your performance.

ReplaceWith(Object) ReplaceWith(Object) ReplaceWith(Object) ReplaceWith(Object)

이 노드를 지정된 콘텐츠로 바꿉니다.Replaces this node with the specified content.

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

매개 변수

content
Object Object Object Object

이 노드를 대체할 콘텐츠입니다.Content that replaces this node.

예제

다음 예제에서는이 메서드를 사용 하 여 다른 내용 노드의 내용을 바꿉니다.The following example uses this method to replace the contents of a node with different content.

XElement xmlTree = new XElement("Root",  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XElement("Child3", "child3 content"),  
    new XElement("Child4", "child4 content"),  
    new XElement("Child5", "child5 content")  
);  
XElement child3 = xmlTree.Element("Child3");  
child3.ReplaceWith(  
    new XElement("NewChild", "new content")  
);  
Console.WriteLine(xmlTree);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child1>child1 content</Child1>  
            <Child2>child2 content</Child2>  
            <Child3>child3 content</Child3>  
            <Child4>child4 content</Child4>  
            <Child5>child5 content</Child5>  
        </Root>  

Dim child3 As XElement = xmlTree.<Child3>(0)  
child3.ReplaceWith(<NewChild>new content</NewChild>)  
Console.WriteLine(xmlTree)  

이 예제는 다음과 같은 출력을 생성합니다.This example produces the following output:

<Root>  
  <Child1>child1 content</Child1>  
  <Child2>child2 content</Child2>  
  <NewChild>new content</NewChild>  
  <Child4>child4 content</Child4>  
  <Child5>child5 content</Child5>  
</Root>  

설명

이 메서드는 먼저 부모에서이 노드를 제거 하 고이 노드 대신이 노드의 부모를 지정된 된 콘텐츠를 추가 합니다.This method first removes this node from its parent, and then adds the specified content to this node's parent, in the place of this node.

합니다 XContainer 단일 연결 목록으로 자식 노드를 저장 XNode 개체입니다.The XContainer stores its child nodes as a singly-linked list of XNode objects. 즉는 ReplaceWith 메서드는 부모 컨테이너에서 직접 자식 노드의 목록을 통과 해야 합니다.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. 따라서이 메서드를 사용 하 여 성능이 달라질 수 있습니다.Therefore, using this method might affect your performance.

이 메서드에 전달 될 수 있는 유효한 콘텐츠에 대 한 자세한 내용은 참조 하세요 유효한 콘텐츠 XElement 및 XDocument 개체합니다.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

이 메서드를 발생 시킵니다 합니다 Changed 하며 Changing 이벤트입니다.This method will raise the Changed and the Changing events.

추가 정보

ReplaceWith(Object[]) ReplaceWith(Object[]) ReplaceWith(Object[]) ReplaceWith(Object[])

이 노드를 지정된 콘텐츠로 바꿉니다.Replaces this node with the specified content.

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

매개 변수

content
Object[]

새 콘텐츠의 매개 변수 목록입니다.A parameter list of the new content.

예제

다음 예제에서는 결과 사용 하 여는 LINQ to XMLLINQ to XML 이 메서드에 대 한 입력으로 쿼리 합니다.The following example shows using the results of a LINQ to XMLLINQ to XML query as the input to this method.

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)  
);  
XElement child3 = xmlTree.Element("Child3");  
child3.ReplaceWith(  
    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>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

Dim child3 As XElement = xmlTree.<Child3>(0)  
child3.ReplaceWith( _  
    From el In srcTree.Elements() _  
    Where (CInt(el) > 3) _  
    Select el)  

Console.WriteLine(xmlTree)  

이 예제는 다음과 같은 출력을 생성합니다.This example produces the following output:

<Root>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

설명

이 메서드는 먼저 부모에서이 노드를 제거 하 고이 노드 대신이 노드의 부모를 지정된 된 콘텐츠를 추가 합니다.This method first removes this node from its parent, and then adds the specified content to this node's parent, in the place of this node.

합니다 XContainer 단일 연결 목록으로 자식 노드를 저장 XNode 개체입니다.The XContainer stores its child nodes as a singly-linked list of XNode objects. 즉는 ReplaceWith 메서드는 부모 컨테이너에서 직접 자식 노드의 목록을 통과 해야 합니다.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. 따라서이 메서드를 사용 하 여 성능이 달라질 수 있습니다.Therefore, using this method might affect your performance.

이 메서드에 전달 될 수 있는 유효한 콘텐츠에 대 한 자세한 내용은 참조 하세요 유효한 콘텐츠 XElement 및 XDocument 개체합니다.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

이 메서드를 발생 시킵니다 합니다 Changed 하며 Changing 이벤트입니다.This method will raise the Changed and the Changing events.

추가 정보

적용 대상