RT<?xml version="1.0"?>
<Config>
  <List>
    <User1>001</User1>
    <User2>操作员1</User2>
    <User3>111</User3>
  </List>
 </Config>
上述XML   我该怎么写 才能把像 User1 User2 User3 这样的同级  输出到一个comoBox 里...
谢谢...

解决方案 »

  1.   

    用dataset吧,比较简单易用些。DataSet ds=new DataSet();
    ds.ReadXml(XML_filepath);
    string user1 = ds.Tables[0].Rows[0]["User1"].ToString();
    string user2 = ds.Tables[0].Rows[0]["User2"].ToString();
    string user3 = ds.Tables[0].Rows[0]["User3"].ToString();
      

  2.   

    如果xml很不标准的话,可以考虑下面的方法
    不过,建议你的xml不要定义成这个样子,xml叫什么?"可扩展标记语言",既然如此,你那user1,user2的就不合适了<?xml version="1.0"?>
    <Config>
      <List>
        <!--这样岂不更好-->
        <User ID="1">001</User>
        <User ID="2">操作员1</User>
        <User ID="3">111</User>
      </List>
    </Config>
            using System.Xml.Linq;        /*该方法是针对你给定xml的读取方式*/
            static void Main(string[] args)
            {
                GetUserList().ForEach(s => Console.WriteLine(s));
            }
            public static List<String> GetUserList()
            {
                List<String> tempReturnValue = new List<string>();
                var tempDoc = XDocument.Load("../../testXml.xml");
                var tempElementList = tempDoc.Root.Elements(XName.Get("List"));
                foreach (XElement tempListItem in tempElementList)
                {
                    foreach (XElement tempUserItem in tempListItem.Elements())
                    {
                        tempReturnValue.Add(tempUserItem.Value);
                    }
                }
                return tempReturnValue;
            }