2010-07-02 23 views
0

嘿傢伙,我有一個應用程序,我想顯示一些數據從DataGridView中的一個SQL數據庫...我現在在DataGridView中顯示的數據,但這裏是我的問題...如何可以我使用自定義標題標題,因爲我不希望將SQL列標題用於DataGridView列標題。另外,我希望它能夠在用戶雙擊一行時打開該行的filePath值...我也希望能夠指定列的寬度。這是如何放置表格。DataGridView中的SQL數據

SQL表: ROW_ID(我不想顯示網格),部分號碼,CMMNumber,CreatedOn,文件路徑,RacfId,currTime

數據網格視圖中所需的格式: 型號,CMM號碼,創建時間,路徑,用戶ID,在

當前代碼 - 它獲取數據(包括Row_ID),並使用sql列名作爲數據網格視圖列的名稱,它也只使用默認列寬。

private void NewAlert_Load(object sender, EventArgs e) 
     { 
      string connString = "Server=FRXSQLDEV;Database=MyDB;User Id=ID;Password=Password;"; 

      string query = "SELECT * FROM CMMReports WHERE RacfId IS NULL;"; 

      SqlDataAdapter dAdapter = new SqlDataAdapter(query, connString); 

      SqlCommandBuilder cBuilder = new SqlCommandBuilder(dAdapter); 

      DataTable dTable = new DataTable(); 

      dAdapter.Fill(dTable); 



      //BindingSource to sync DataTable and DataGridView 
      BindingSource bSource = new BindingSource(); 

      //set the BindingSource DataSource 
      bSource.DataSource = dTable; 

      //set the DataGridView DataSource 
      dgView.DataSource = bSource; 

      dAdapter.Update(dTable); 



     } 
+0

你可以閱讀的DataGridView常見問題這對我幫助很大http://www.google.co.nz/url?sa=t&source=web&ct=res&cd=1&ved=0CAYQFjAA&url=http %3A%2F%2Fwww.windowsclient.net%2FSamples%2FGo%2520To%2520Market%2FDataGridView%2FDataGridView%2520FAQ.doc&rct = j&q = datagridview + faq&ei = bNrpS8vCMoqOkQXkxcCHCw&usg = AFQjCNEnheLFyYG0nwJGotD8HjYYZl8Rug – adopilot 2010-07-02 06:55:43

回答

3

如果你想使用自定義標題等。首先創建一個新的數據表,並給出名稱。小心的typeof()

DataTable dt = new DataTable(); 

     dt.Columns.Add("Title 1",typeof(int)); 
     dt.Columns.Add("Title 2", typeof(string)); 
     dt.Columns.Add("Title 3", typeof(DateTime)); 
     dt.Columns.Add("Title 4", typeof(bool)); 
     dt.AcceptChanges(); 

獲取它來自SQL的所有數據,並在

的foreach爲他們創建的對象綁定(在yourSqlData VAR項目)

object[] row = new object[] 
     { 
     item.data1.ToString(), // string columns 
     Convert.ToInt32(item.data2), // int columns 
     Convert.ToDateTime(item.data3), // datetime column 
     Convert.ToBoolean(item.data4) // bool column 
     }; 
     dt.Rows.Add(row); 

和DT到你的GridView

0

用於隱藏您的列(「Row_ID」)您可以使用

dgView.Columns[0].Visible = false; 

有關設置頁眉文字

dgView.Columns[1].HeaderText = "PartNumber"; 
+0

這太棒了!現在我只需要它,以便當用戶單擊某行時,它將導航到該行的FilePath列中的值。任何指導? – 2010-07-02 13:47:29

相關問題