在DataGridView的设计时,在设计器中增加了多个列绑定,显示时也都能显示出来,但经常碰到的问题是:在设计时的列顺序和运行时的列顺序不一样
这是因为将 Windows 窗体 DataGridView 控件绑定到数据源时,自动生成的列的显示顺序由数据源确定,而没有完全根据设计器的顺序,算是vs的一个bug
如果不希望以这种顺序显示,可以通过使用 DataGridViewColumn 类的 DisplayIndex 属性更改列的显示顺序。例如
private void AdjustColumnOrder()
... {
customersDataGridView.Columns["CustomerID"].Visible = false;
customersDataGridView.Columns["ContactName"].DisplayIndex = 0;
customersDataGridView.Columns["ContactTitle"].DisplayIndex = 1;
customersDataGridView.Columns["City"].DisplayIndex = 2;
customersDataGridView.Columns["Country"].DisplayIndex = 3;
customersDataGridView.Columns["CompanyName"].DisplayIndex = 4;
}