XElement.DescendantsAndSelf Method

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Returns a collection of elements that contain this element, and all descendant elements of this element, in document order.

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

Syntax

'Declaration
Public Function DescendantsAndSelf As IEnumerable(Of XElement)
public IEnumerable<XElement> DescendantsAndSelf()

Return Value

Type: System.Collections.Generic.IEnumerable<XElement>
An IEnumerable<T> of XElement of elements that contain this element, and all descendant elements of this element, in document order.

Remarks

This method uses deferred execution.

Examples

The following example creates an XML tree, and then uses this axis method.

Dim output As New StringBuilder
Dim xmlTree As XElement = _
    <Root Att1="AttributeContent">
        <Child>Some text
<GrandChild>element content</GrandChild>
        </Child>
    </Root>

Dim das As IEnumerable(Of XElement) = _
    From el In xmlTree.DescendantsAndSelf() _
    Select el

For Each el In das
    output.Append(el.Name)
    output.Append(Environment.NewLine)
Next


OutputTextBlock.Text = output.ToString()
StringBuilder output = new StringBuilder();
XElement xmlTree = new XElement("Root",
    new XAttribute("Att1", "AttributeContent"),
    new XElement("Child",
        new XText("Some text"),
        new XElement("GrandChild", "element content")
    )
);
IEnumerable<XElement> das =
    from el in xmlTree.DescendantsAndSelf()
    select el;
foreach (XElement el in das)
    output.Append(el.Name + Environment.NewLine);

OutputTextBlock.Text = output.ToString();

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.