禁用datagridview自动排序VB.NET

时间:2014-06-11 11:42:27

标签: vb.net datagridview

在某些情况下(我相信使用内连接时)datagridview无法正确表示从SQL查询填充的列顺序。

例如,我按此顺序查询表列:

Select Booking_ID, Client_Name, Room_ID 

虽然SQL以正确的顺序返回列,但datagridview以不同的顺序自动显示列:

Room_ID || Booking_ID || Client_Name

问题是,如何禁用此自动列水平排序,因此datagridview显示SQL的确切方式如何?

我正在使用数据源方法来填充数据网格。

SQLDA = New SqlDataAdapter(SqlCmd)
SQLDataset = New DataSet
SQLDA.Fill(SQLDataset)
Form2.DGVData.DataSource = SQLDataset.Tables(0)

在大多数情况下,此问题不存在,datagridview完全按照SQL的原样显示该表。

提前谢谢。

PS:我会发布图片,但我不允许,因为需要10个声誉。

1 个答案:

答案 0 :(得分:1)

简单,但应该有效:

dgvDataGridView.Columns("Booking_ID").DisplayIndex = 0
dgvDataGridView.Columns("Client_Name").DisplayIndex = 1
dgvDataGridView.Columns("Room_ID").DisplayIndex = 2
'...