2010-11-04 42 views
0

我對C#(和Visual Studio)很新穎,並且遇到了問題。使用基於SELECT語句的DataTable和TableAdapter填充DataGridView

我有一個Access數據庫,我正在使用,我需要使用SELECT語句填充DataGridView。這是我迄今爲止所做的:

  1. 打開我的DataSet.xsd文件。
  2. 根據我想運行的SELECT語句創建一個新的DataTable(稱爲MyNewTable)和TableAdapter。
  3. 去我的Form.cs文件,添加一個DataGridView,並將其數據源設置爲Other Data Sources > Project Data Sources > DataSet > MyNewTable
  4. 構建並運行程序。

但是,當我運行它時,它不顯示任何行。因此,爲了檢查並使我的SELECT語句實際返回行,我回到我的DataSet.xsd文件並右鍵單擊MyNewTable並選擇Preview Data。果然,當我點擊預覽數據按鈕時,表格中有兩行。

只是爲了檢查並確保我沒有在綁定中做錯什麼,我試着返回並將DataSource設置爲不同的表(從數據庫中的實際表,而不是基於SELECT語句的表)。當我用真實表格重新顯示數據時。

那麼我做錯了什麼?創建顯示SELECT語句結果的DataGridView的正確過程是什麼?

回答

2

簡單..

看到首先是去您的窗體的XAML ..發現你拖在DataGridView .. 在那裏,你必須找到的AutoGenerateColumns屬性,然後將其設置爲

之後回到你的C#代碼和不喜歡這樣

...

yourdataset x = new yourdataset(); 
yourtableadapter y = new yourtableadapter(); 
y.Fill(x.yourtable); 
datagridview1.itemsource = x.yourtable.defaultview ; 

請記住..這是不準確的代碼......這只是爲了說明的緣故.. 您的數據集和表名可能會有所不同。所以使用適當的名稱.. 任何問題,讓我知道..

-1

是,上面的代碼工作但只適用於FillGet狀態。不要爲其他提供任何行選擇查詢。 你可能不得不實施一個存儲過程,然後你可以做任何你想要的