从SQL Server表填充和编辑datagrid

时间:2013-07-12 12:29:08

标签: sql sql-server vb.net

我需要从SQL Server中名为Pastel_Companies的表中填充我的数据网格,然后如果对数据网格进行任何更改,则必须将其更新到数据库。

我使用默认视图来填充我的数据网格。

我是否有另一种方法可以单独链接每一列,以便我可以调整列的大小,因为它们已修复为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()

1 个答案:

答案 0 :(得分: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