簡體   English   中英

如何在C#中使用XDocument顯示Xml子元素名稱?

[英]How to show Xml child element name with XDocument in C#?

您好,我想使用linq和xdocument顯示根節點的子節點的名稱,但沒有找到同樣方便的東西。 我的xml在下面給出

<temp>
<Movies>
    <Title>Man Of Steel</Title>
    <Title>Kung Fu Panda</Title>
    <Title>Thor</Title>
</Movies>
<Cars>
    <Title>Racing</Title>
    <Title>Vintage</Title>
    <Title>Luxary</Title>
</Cars>
</temp>

預期輸出為:

  1. 電影
  2. 汽車

你能幫我嗎 我還希望動態地完成這一點,這意味着從代碼中我不想放置元素的名稱。 這需要做些事情

XDocument xdoc = XDocument.Load("Folder.xml");
var element = xdoc.Root.Elements();
foreach(var a in element)
{
   Console.WriteLine(a.Name);
}

該代碼在控制台應用程序中有效,但是當我嘗試在wpf應用程序中實現此功能以為這些類別創建單選按鈕時,該代碼在此處未顯示任何內容。 它顯示為空白。 這就是為什么我面臨問題。

如果您實際上希望列出所有電影和汽車項目,而不使用以下代碼:

var xdoc = XDocument.Load("Folder.xml");
if (xdoc.Root != null)
{
    var element = xdoc.Root.Elements();
    foreach (var a in element)
    {
        Console.WriteLine(a.Name);
        foreach (var item in a.Elements())
        {
            Console.WriteLine("\t" + item.Value);
        }
    }
}

輸出應為:

Movies
        Man Of Steel
        Kung Fu Panda
        Thor
Cars
        Racing
        Vintage
        Luxary

你應該試試這個

foreach(var a in element)
{
    RadioButton rdb = new RadioButton();
    rdb.content = a.Name.LocalName;
}

我希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM