【问题标题】:How to display results from XML file on grid view C#?如何在网格视图 C# 上显示 XML 文件的结果?
【发布时间】:2016-04-28 14:11:19
【问题描述】:

`这是我的代码的一部分:

        if (radioButton2.Checked)
        {
            int gthan = int.Parse(textBox2.Text);
            foreach (XmlNode n in doc.SelectNodes("/employees/employee/salary"))
            {

                int curr = Int32.Parse(n.InnerText);
                if (curr <gthan)
                { noe++;
                }
            }
            MessageBox.Show("number of employees" + +noe);}

` 我做了一些在 XML 文件表中执行的功能,比如带来最高薪水等等,但是如何告诉程序在 windows 窗体应用程序的网格视图中显示具有最高薪水的孩子?

【问题讨论】:

标签: c# xml winforms


【解决方案1】:

你可以这样做

var ds = new DataSet();
ds.ReadXml("Path to your xml file");
dgvSalary.DataSource = ds.Tables[0];
dgvSalary.Refresh();    

在此示例中,您希望在类级别声明一个 DataTable

//dtSearch is a DataTable that was declared at the class level as 
public DataTable dtSearch = null; 
//you can populate the dtSearch with the ds.Tables[0];
dtSearch = ds.Tables[0];
dv = new DataView(dtSearch); //create a DataView in memory
dv.RowFilter = "Salary < 1000";
//bind the DataGridView to dv 
dgvSalary.DataSource = dv;
dgvSalary.Refresh();

【讨论】:

  • 感谢您的回答,但这会显示整个表格,我之前也这样做过,但我希望当我使用函数来显示例如员工的工资低于 1000 美元的网格视图中的行而不是所有员工时跨度>
  • 你仍然可以通过使用.RowFilter方法来过滤数据表创建DataView对象的新实例这也很简单如果你需要我可以发送一个例子
  • 哦,是的,请给我一个例子,我将不胜感激,因为我是 C# 的初学者
  • 对不起,我怎么能这样做,这样做意味着我不会再从 XML 文件中读取数据,因为程序需要 XML 文件
  • 我认为您误解了只要您在 xml 中有 Salary 节点,无论有多少行,它都将始终有效..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-20
  • 1970-01-01
  • 2012-10-13
  • 2017-01-01
相关资源
最近更新 更多