2013-07-12 49 views
2

我需要從SQL Server中的一個表中填充名爲Pastel_Companies的數據網格,然後如果對數據網格進行了任何更改,則必須將其更新到數據庫。從SQL Server表中填充和編輯數據網格

我正在使用默認視圖來填充我的數據網格。

是否有另一種方式,我分別鏈接每列,所以我可以調整我的列的大小,因爲它們固定到什麼SQL?

這裏是我的代碼:

Dim cn As New SqlClient.SqlConnection(SQL_Loader("", My.Settings.SQL_Win_Auth, My.Settings.SQL_Username, My.Settings.SQL_Password, My.Settings.SQL_Server_Name, My.Settings.SQL_DB_Name)) 
Dim Cmd As New SqlClient.SqlCommand 
Dim ds As New DataSet 
Dim dt As New DataTable 
ds.Tables.Add(dt) 
Dim da As New SqlClient.SqlDataAdapter 

Cmd.Connection = cn 

cn.Open() 

da = New SqlClient.SqlDataAdapter("Select Company_ID, Prefix, DSN, File_Path From Pastel_Companies", cn) 
da.Fill(dt) 

'DataGridView1.Columns.Add("Company_ID", Prefix.ToString) 
DataGridView1.DataSource = dt.DefaultView 

cn.Close() 

回答

3

來源:http://social.msdn.microsoft.com/Forums/windows/en-US/e444ca84-3319-4dfa-aa31-46f310dd0c13/datagridview-autosize-rowcolumn

'for the rows 
    DataGridView1.AutoResizeRow(2, DataGridViewAutoSizeRowMode.AllCellsExceptHeader) 
    'and for columns 
    DataGridView1.Columns(0).AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells 

,或者您可以使用每個循環

DataGridView1.Columns(i).Width = x 
+0

好的,謝謝你,解決問題的一部分。但是,如果有任何更改,我如何更新? – user2564223

+0

將autosize的代碼放入DataGridView的EndEdit事件中 –