XNode.ReplaceWith Método

Definição

Substitui esse nó pelo conteúdo especificado.Replaces this node with the specified content.

Sobrecargas

ReplaceWith(Object)

Substitui esse nó pelo conteúdo especificado.Replaces this node with the specified content.

ReplaceWith(Object[])

Substitui esse nó pelo conteúdo especificado.Replaces this node with the specified content.

Exemplos

O exemplo a seguir usa esse método para substituir o conteúdo de um nó por conteúdo diferente.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)  

Esse exemplo gera a saída a seguir: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>  

Comentários

Para obter detalhes sobre o conteúdo válido que pode ser passado para esse método, consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

Esse método irá gerar o Changed e os Changing eventos.This method will raise the Changed and the Changing events.

O XContainer armazena seus nós filho como uma lista de objetos vinculada individualmente XNode .The XContainer stores its child nodes as a singly-linked list of XNode objects. Isso significa que o ReplaceWith método deve atravessar a lista de nós filho diretos no contêiner pai.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. Portanto, o uso desse método pode afetar o desempenho.Therefore, using this method might affect your performance.

ReplaceWith(Object)

Substitui esse nó pelo conteúdo especificado.Replaces this node with the specified content.

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

Parâmetros

content
Object

Conteúdo que substitui esse nó.Content that replaces this node.

Exemplos

O exemplo a seguir usa esse método para substituir o conteúdo de um nó por conteúdo diferente.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)  

Esse exemplo gera a saída a seguir: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>  

Comentários

Esse método primeiro remove esse nó de seu pai e, em seguida, adiciona o conteúdo especificado ao pai deste nó, no lugar deste nó.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.

O XContainer armazena seus nós filho como uma lista de objetos vinculada individualmente XNode .The XContainer stores its child nodes as a singly-linked list of XNode objects. Isso significa que o ReplaceWith método deve atravessar a lista de nós filho diretos no contêiner pai.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. Portanto, o uso desse método pode afetar o desempenho.Therefore, using this method might affect your performance.

Para obter detalhes sobre o conteúdo válido que pode ser passado para esse método, consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

Esse método irá gerar o Changed e os Changing eventos.This method will raise the Changed and the Changing events.

Aplica-se a

ReplaceWith(Object[])

Substitui esse nó pelo conteúdo especificado.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())

Parâmetros

content
Object[]

Uma lista de parâmetros do novo conteúdo.A parameter list of the new content.

Exemplos

O exemplo a seguir mostra como usar os resultados de uma consulta LINQ to XML como a entrada para esse método.The following example shows using the results of a LINQ 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)  

Esse exemplo gera a saída a seguir: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>  

Comentários

Esse método primeiro remove esse nó de seu pai e, em seguida, adiciona o conteúdo especificado ao pai deste nó, no lugar deste nó.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.

O XContainer armazena seus nós filho como uma lista de objetos vinculada individualmente XNode .The XContainer stores its child nodes as a singly-linked list of XNode objects. Isso significa que o ReplaceWith método deve atravessar a lista de nós filho diretos no contêiner pai.This means that the ReplaceWith method must traverse the list of direct child nodes under the parent container. Portanto, o uso desse método pode afetar o desempenho.Therefore, using this method might affect your performance.

Para obter detalhes sobre o conteúdo válido que pode ser passado para esse método, consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.

Esse método irá gerar o Changed e os Changing eventos.This method will raise the Changed and the Changing events.

Aplica-se a