还有怎么根据下拉菜单所选择的选项来用datagrid显示出其内容
比如我选择menu02则把下面的内容用datagrid显示出来
<item href="#" label="子菜单02-01"/>
<item href="#" label="子菜单02-02"/>
<item href="#" label="子菜单02-03"/>
<item href="#" label="子菜单02-04"/>
<item href="#" label="子菜单02-05"/>

解决方案 »

  1.   

    可以用XmlDocument+XPath具体用法自己查msdn吧.代码就不帖了.
      

  2.   

    还有怎么根据下拉菜单所选择的选项来用datagrid显示出其内容://首先构建一个datatable
    DataSet ds = new DataSet("ds");DataTable dt = custDS.Tables.Add("dt");dt.Columns.Add("href", typeof(string));
    dt.Columns.Add("label", typeof(string));//找到menu02的所有item节点并把信息存到datatable中
    XmlDocument doc = new XmlDocument();
    doc.Load("yourxml.xml");XmlNode book;
    XmlNode root = doc.DocumentElement;node=root.SelectSingleNode("submenu[handle='menu02']");if (node.HasChildNodes)
    {
       for (int i=0; i<node.ChildNodes.Count; i++)
       {
          dr = dt.NewRow();
          dr[0] = node.ChildNodes[i].Attributes["href"];
          dr[1] = node.ChildNodes[i].Attributes["label"];
          dt.Rows.Add(dr);
       }
    }//绑定到DataGrid
    yourDataGrid.DataSource = ds;
      

  3.   

    不好意思,上面有点错误
    //首先构建一个datatable
    DataSet ds = new DataSet("ds");DataTable dt = ds.Tables.Add("dt");dt.Columns.Add("href", typeof(string));
    dt.Columns.Add("label", typeof(string));//找到menu02的所有item节点并把信息存到datatable中
    XmlDocument doc = new XmlDocument();
    doc.Load("yourxml.xml");XmlNode node;
    XmlNode root = doc.DocumentElement;node=root.SelectSingleNode("submenu[handle='menu02']");if (node.HasChildNodes)
    {
       for (int i=0; i<node.ChildNodes.Count; i++)
       {
          dr = dt.NewRow();
          dr[0] = node.ChildNodes[i].Attributes["href"];
          dr[1] = node.ChildNodes[i].Attributes["label"];
          dt.Rows.Add(dr);
       }
    }//绑定到DataGrid
    yourDataGrid.DataSource = ds;