<?xml version="1.0" encoding="utf-8"?>
<root>
<item id="result">
<item id="source">
<item id="uid">1</item>
<item id="username">admin</item>
<item id="nickname">管理员</item>
<item id="following"></item>
<item id="followed_by">1</item>
</item>
<item id="target">
<item id="uid">5</item>
<item id="username">haha</item>
<item id="nickname">哈哈</item>
<item id="following">1</item>
<item id="followed_by"></item>
</item>
</item>
</root>
例如xml文件如上述所示,现在如何创建一个windows form,功能一:一个按钮用于显示所有属性的值;功能二:另外用户可以输入一个属性名,在text框中显示其属性值。求高手给出完整的程序,谢谢了,在线等~~~

解决方案 »

  1.   

    http://blog.csdn.net/happy09li/article/details/7460521
      

  2.   

    linq to xml 查询属性值
      

  3.   

    能不能关于这个xml文件给个现成的程序呀~~
      

  4.   

     XElement xmlPage = XElement.Parse(xml);
                 
                var query = from x in xmlPage.Descendants("item")
                            where  x.Element("x").Value==""
                        select x.Element("x").Value;
                        //属性x.Attribute("id").Value
      

  5.   


            public static void GetAllValue()
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load("..\\..\\test.xml");
                XmlNodeList xnList = xmlDoc.DocumentElement.SelectNodes("//item/item/item");
                foreach (XmlNode item in xnList)
                {
                    Console.WriteLine(item.InnerText);
                }
            }        public static void GetAllValueById(string id)
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load("..\\..\\test.xml");
                XmlNodeList xnList = xmlDoc.DocumentElement.SelectNodes("//item/item/item[@id='" + id + "']");
                foreach (XmlNode item in xnList)
                {
                    Console.WriteLine(item.InnerText);
                }
            }
      

  6.   

    功能一
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.LoadXml(test); //加载XML
    XmlNodeList xnl = xmlDoc.SelectNodes("root");foreach (XmlNode linkNode in xnl)
    {
    XmlElement xe = (XmlElement)linkNode;//将子节点类型转换为XmlElement类型
    string AID = xe.SelectSingleNode("id").InnerText.Trim();
    \\
    一个一个取值
    }
      

  7.   

    是windows form的呀,最好根据我给的那个例子写一下,麻烦了~~
      

  8.   


                XDocument doc = XDocument.Load("c:\\temp\\1.txt");
                var nodes = doc.Descendants("item");
                foreach (XElement item in nodes)
                {
                    MessageBox.Show(item.Value);
                }
      

  9.   

    XmlDocument xml = new XmlDocument();
    xml.Load("file");
    xml.Attribute["id"] ="target" ;2.
    xml.SelectSingleNode("节点名").InnerText;
    方法很多。 
      

  10.   

    你可能没理解我的意思,我希望要一个windows form的完整程序,有一个输入框和一个输出框,在输入框中输入属性名,相应的就在输出框中输出他的属性值。就根据我给的xml,能给个完整的程序吗?
      

  11.   

    根据我贴  #6楼  的代码已经很简单了。
    建立一个winform应用程序。
    在上面拖几个文本框,一个按钮。
    点击按钮调用方法,在方法中给文本框赋值就可以了。this.textbox1.text = "这是值";