2013-07-12 46 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事件中 –