【问题标题】:Reading from XML file into a DataSet从 XML 文件读入数据集
【发布时间】:2011-07-24 01:18:01
【问题描述】:

我尝试用这样的 XML 文件中的值填充DataSet,这样我就可以用这些值填充DataGridView

DataSet ds = new DataSet();
ds.ReadXml(@"C:\aaa.xml");
dataGridView1.DataSource = ds;
dataGridView1.DataSource = "Products";

但我什么也得不到。我做错了什么?

【问题讨论】:

  • datagridview1.databind() 在哪里
  • 我的应用程序是 WinFor 应用程序。

标签: c# xml winforms dataset


【解决方案1】:

你确定你加载的数据在你的数据集中会被称为Products吗?

在加载数据后尝试通过检查数据集中的表来验证:

DataSet ds = new DataSet();
ds. ReadXml(@"C:\aaa.xml");

foreach(DataTable t in ds.Tables)
{
   string tableName = t.TableName;   // put a breakpoint here - inspect the table names
}

如果你想简单地使用显示加载的第一个表,试试这个 sn-p:

DataSet ds = new DataSet();
ds. ReadXml(@"C:\aaa.xml");

dataGridView1.DataSource = ds;
dataGridView1.DataMember = ds.Tables[0].TableName;

【讨论】:

  • DataTable 示例更简单,但我无法让它工作。
  • @Lars:DataTable 似乎确实不起作用 - 我将我的帖子改回使用 DataSet 并自动选择该数据集中的第一个表以绑定到 DataGridView。跨度>
【解决方案2】:
DataSet ds = new DataSet();
ds.ReadXml(@"C:\aaa.xml");
dataGridView1.DataSource = ds;
dataGridView1.Datamember= "Products";

【讨论】:

  • 他都写过一次作为数据源检查
  • 是的 - 一个简短的解释也可能会有所帮助 - 不仅仅是代码行......
  • 是的,我的问题是我写的是数据源而不是数据成员:S
  • 如果您不知道 Datamember 怎么办?不读 xml 文件怎么读?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-18
  • 1970-01-01
  • 2010-12-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多