选择事件中跟据选择的内容从xmldocument中读取对应节点值就是了

解决方案 »

  1.   

    那要看你是几级节点,如果1到2级,正常读取到datagirdview或datatable之后绑定,如果更多子级,就要考虑使用嵌套datagridview实现。
    有点麻烦,但是不是太难!祝你成功!
      

  2.   

    这样做的话,我如果修改了datagridview的值(添加,删除),怎么样保存到xml中呢?之前 没有子级的时候,我是先把原来的xml全部删除的,然后根据datagridview的值添加的,现在有多个datagridview,该怎么保存。
      

  3.   

    一般做法是传节点的位置过去,然后另一个窗体再从xmldocument的指定位置读取信息
      

  4.   

    最好的做法是,先将xml转成DataTable,这样操作起来比较方便,比如选中第3行,我只用把当前位置告诉另一个窗体,然后窗体再从DataTable.Rows[行号]就可以获得相应的信息
      

  5.   


                foreach (XmlNode nodes in rootNode)
                {
                    if (nodes.Attributes["Desc"].Value == dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[0].Value.ToString() &&
                        nodes.Attributes["AutoReSolution"].Value == dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[1].Value.ToString() &&
                       nodes.Attributes["SimpleSolution"].Value == dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[2].Value.ToString() &&
                        nodes.Attributes["SolutionUnit"].Value == dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[3].Value.ToString())
                    {
                        foreach (XmlNode childNode in nodes)
                        {
                            switch (childNode.Name)
                            {
                                case "SolutionItem":
                                    dataGridView2.Rows.Add(childNode.InnerText);
                                    break;
                            }
                        }
                    }
                }
        是这样写吗?可是提示我“对象的引用未设置到对象的实例”。应该怎么修改呢?????