2012-06-13 98 views
3

我看到了很多問題,並應用了他們的結果,但沒有任何反應,我仍然沒有看到任何列標題/數據在gridview中。Datagridview不顯示任何東西沒有列標題,也沒有數據

代碼很簡單,我得到的數據集的數據,我看到它在調試和我簡單地分配給datagridview的使用

datagridviewjobs.Datasource=tempJobsDataset; 

但沒有任何反應它保持爲空!

+0

你是否缺少datagridviewjobs.databind();設置DataSource並確保AutoGenerateColumns設置爲true後。 –

+1

我可能是錯的,但我不認爲你可以直接將Datasouce設置爲數據集,嘗試將其設置爲您感興趣的數據表,即tempJobsDataset.Tables [「MyTable」] –

+0

好點@KDiTraglia。一個DataSet可能有十幾個表格...... DataGridView如何知道要顯示哪個表格?我認爲你應該將其作爲答案發布...... –

回答

3

您不能將網格的數據源設置爲整個DataSet,DataSet可能有數十個與其關聯的表,因此它不會知道綁定到哪個表。試試這個

datagridviewjobs.Datasource=tempJobsDataset.Tables("MyTable"); 
0

如果您asigning你必須接受,以獲得在GridView更新表上的更改後往裏面...

這裏是蒙山的包裝類的完整初始化。

private void init(DataGridView datagridview, IHave_A_DataTable x) 
    { 
     datagridview.DataSource = x.GetDataTable(); 

     datagridview.Columns[datagridview.ColumnCount - 1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; 

     datagridview.CurrentCell = datagridview[0, datagridview.RowCount - 1]; 

     x.Changed += new EventHandler((o, e) => 
     { 
      IHave_A_DataTable sender = o as IHave_A_DataTable; 
      sender.GetDataTable().AcceptChanges(); 
     }); 
    } 

此外,數據集存儲多於onwe表,但gridview只能接受數據表。