2011-03-27 77 views
1

我試圖填補DataSet從這樣的XML文件的值,所以我可以再填充值的DataGridView讀入數據集

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

但我沒有得到任何東西。我究竟做錯了什麼?

+0

其中datagridview1.databind() – Dotnet 2011-03-27 20:25:31

+1

我的應用程序是一個WinFor應用程序。 – Lars 2011-03-27 20:27:00

回答

2

你確定你的加載數據將被稱爲數據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 
} 

如果你想使用簡單地顯示加載的第一個表,試試這個片斷:

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

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

DataTable示例更簡單,但無法使其工作。 – Lars 2011-03-27 22:08:53

+0

@Lars:'DataTable'似乎無法正常工作 - 我將我的帖子修改爲使用'DataSet'並自動選取該數據集中的第一個表格以綁定到DataGridView。 – 2011-03-28 04:49:24

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

他寫了兩次數據源檢查一次 – Dotnet 2011-03-27 20:29:34

+0

正確 - 一個簡短的**解釋**也許也有幫助 - 不只是代碼行...... – 2011-03-27 20:30:48

+0

是的我的問題是,我寫了數據源而不是datamember:S – Lars 2011-03-27 20:32:34