如何在C#中的表中显示XML文件中的数据?

时间:2016-01-14 07:04:37

标签: c# xml

我想将xml文件中的数据显示到表中,因此我可以轻松地看到它们并添加/删除/编辑。 指某东西的用途     的DataGridView 非常感谢。

2 个答案:

答案 0 :(得分:0)

在asp.net中,使用Gridview,在下面添加命名空间和代码,

using System.Xml;
using System.Data;

    DataSet ds = new DataSet();
    ds.ReadXml(MapPath("~/App_Data/examplefile1.xml"));

    GridView1.DataSource = ds;
    GridView1.DataBind();

在windows datagridview.add命名空间和下面的代码中,

using System.Xml;
using System.Data;

 XmlReader xmlFile ;
                xmlFile = XmlReader.Create("examplefile1.xml", new XmlReaderSettings());
                DataSet ds = new DataSet();
                ds.ReadXml(xmlFile);
                dataGridView1.DataSource = ds.Tables[0];

工作正常。

答案 1 :(得分:0)

我在互联网上看到了另一种方式,由Vetrivel D提供(来源:http://tinyurl.com/VetrivelD

        DataSet ds = new DataSet();
        DataTable dt1 = new DataTable();
        dt1.TableName = "JobDetails";
        dt1.Columns.Add("JobNum");
        dt1.Columns.Add("Detail1");
        dt1.Columns.Add("Detail2");

        ds.Tables.Add(dt1);

        foreach (DataGridViewRow r in dataGridView1.Rows)
        {
            DataRow row1 = ds.Tables["JobDetails"].NewRow();
            row1["JobNum"] = r.Cells[0].Value.ToString();
            row1["Detail1"] = r.Cells[1].Value.ToString();
            row1["Detail2"] = r.Cells[2].Value.ToString();
            ds.Tables["JobDetails"].Rows.Add(row1); 
        }
        ds.WriteXml("..\\..\\..\\xmlSample.xml");

对于装载,他有这个:

        DataSet ds = new DataSet();
        ds.ReadXml("..\\..\\..\\xmlSample.xml");

        foreach (DataRow item in ds.Tables["JobDetails"].Rows)
        {
            int n = dataGridView1.Rows.Add();
            dataGridView1.Rows[n].Cells[0].Value =     item["JobNum"].ToString();
            dataGridView1.Rows[n].Cells[1].Value = item["Detail1"].ToString();
            dataGridView1.Rows[n].Cells[2].Value = item["Detail2"].ToString();
        }

我想强调一下,我刚刚重写了我在互联网上看到的代码,其中包含了源代码。