我想建一个数组strs保存来自XMLFile1.xml的相关数据。数组最后是用来给combobox选择用的
 这是我用来模糊查询用的:  XmlDataDocument _xmlData = null;
            XmlNodeList _xmlNodeList = null;            try
            {
                string xmlFile = Application.StartupPath + "\\XMLFile1.xml";
                _xmlData = new XmlDataDocument();
                _xmlData.Load(xmlFile);
                string xpath = "//lines";                   if (textBox1.Text != "")
                {
                    xpath += "[contains(name,'{0}')]";
                    xpath = String.Format(xpath, this.textBox1.Text);
                }
这是关联combobox的代码:
            if (this.comboBox1.Text == "aaa")
            {
                this.comboBox2.Items.Clear();
                comboBox2.Items.Add("选择");
                string[] temp =strs[0].Split(',');
                for (int i = 0; i < temp.Length; i++)
                    comboBox2.Items.Add(temp[i]);
            }
XMLFile1.xml如下:
<?xml version="1.0" encoding="utf-8" ?> 
 <bus>
  
  <linestops>
    <!-- 站点路线 -->
    <lines id="0">
      <name>艺术馆至曙光所专线</name>
      <time>7:00——18:50</time>
      <res>曙光所末班车19:30 艺术馆返回曙光所末班车18:50</res>
      <price>1</price>
      <lin>十字街(解放西路)-七星公园-三里店广场-石油六公司-五里店-二药厂-火车东站-十八中-石油六公司技校-电缆厂-曙光所</lin>
      <start_end>艺术馆-曙光所</start_end>
    </lines>
    
    <lines id="1">
      <name>1 路</name>
      <time>6:00——22:30</time>
      <res></res>
      <price>1</price>
      <lin>公交集团公司-香江饭店-象山区政府-东安街口-西门菜市-九岗岭-西凤路口-信义路口-秀峰区政府-艺术馆-十字街(解放西路)-乐群路口-凤北路口-东镇路-观音阁-北极广场-商贸城-群众路口-家私精品批发城-芳华路口-乌石街-始发站路口-桂林火车北站 </lin>
      <start_end>桂林北站-公交集团公司</start_end>
    </lines>
  </linestops>
  
   <stop>
    <!-- 站点 -->
     <stops id="1">
       <name>数字</name>
       <vlue>181医院</vlue>
     </stops>
     <stops id="2">
       <name>?</name>
       <vlue>电子科大,东江,东江市场,东镇路,凤北路口,火车站,教育学院,旅游批发城,南溪公园,南溪医院,十一中学,西风路口,西凤路,西门菜市,西门市场,象山区政府</vlue>
     </stops>
     <stops id="3">
       <name>A</name>
       <vlue>矮山塘,安新小区,奥林匹克花园,澳洲花园,澳洲假日</vlue>
     </stops>
  </stop>
  -
  - <line>
     <!-- 路线-->
  </line>
</bus>
----------------------------------------------
我想用strs保存vlue,用来给combobox赋值,求大大帮帮忙,最好用上面的类似查询的方法,第一次编XML,是在不懂相关操作

解决方案 »

  1.   

    string xmlFile = Application.StartupPath + "\\XMLFile1.xml";
    XmlDataDocument _xmlData = new XmlDataDocument();
    _xmlData.Load(xmlFile);
    string strs = "";XmlNodeList list= _xmlData.GetElementsByTagName("vlue");
    foreach (XmlNode nd in list)
       strs += "," + nd.InnerText;string[] temp = strs.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries);
    for (int i = 0; i < temp.Length; i++)
       comboBox2.Items.Add(temp[i]);
      

  2.   

    我的vlue的数据跟多。不可能每次选择combobox就重新加载一次,所以我的strs设定是全局变量。程序启动的时候就自动加载数据,但是每次都加载不成功