简体   繁体   English

.Net在运行时重新排序DataGridView列

[英].Net Reorder DataGridView Columns at runtime

Is there a simple way to re-ordering the columns of a DataGridView that are bound to a DataSet at runtime? 有没有一种简单的方法来重新排序在运行时绑定到DataSet的DataGridView的列?

I can do it simply via the DataGridView "Edit Columns" dialog at design time but have to remember to do this every time make changes to the form (remove or add the DataGridView to the form). 我可以在设计时通过DataGridView“编辑列”对话框来完成它,但每次更改表单时都要记住这样做(删除或添加DataGridView到表单)。

Thanks 谢谢

Use DisplayIndex : 使用DisplayIndex

' Swap the last column with the first.'
Private Sub Button10_Click(ByVal sender As Object, _
    ByVal args As EventArgs) Handles Button10.Click

    Dim columnCollection As DataGridViewColumnCollection = _
        dataGridView.Columns

    Dim firstVisibleColumn As DataGridViewColumn = _
        columnCollection.GetFirstColumn(DataGridViewElementStates.Visible)
    Dim lastVisibleColumn As DataGridViewColumn = _
        columnCollection.GetLastColumn(DataGridViewElementStates.Visible, _
        Nothing)

    Dim firstColumn_sIndex As Integer = firstVisibleColumn.DisplayIndex
    firstVisibleColumn.DisplayIndex = _
        lastVisibleColumn.DisplayIndex
    lastVisibleColumn.DisplayIndex = firstColumn_sIndex
End Sub

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM