相关疑难解决方法(0)

DataGridView排序不起作用

Visual Studio 2010 VB.NET

我有一个DataGridView.DataSource设置为自定义对象的集合.列使用自定义对象中的只读属性进行显示,此对话框仅供显示.这些属性都返回String对象.我将列中的所有列设置为自动排序模式(未设置的列是按钮或复选框).但它没有排序.我google了,大多数人使用sql或绑定源,但我使用的是一个简单的vb集合.有人说我应该实现IComparable但不是String已经IComparable?

任何帮助,将不胜感激?

感谢名单

Bodger

根据请求,这里有一些代码片段.

此方法从我在设计器中设计的列中详细定义列.

列名称称为pSelected或pCustomer,并与列定义所关联的属性对应.


Protected Sub UpdateDGVUS()
        If Not USColumnsInitted Then
            USColumnsInitted = True

            dgvUS.AutoGenerateColumns = False
            dgvUS.Columns.Clear()

            Dim iIdx As Integer

            iIdx = 0

            dgvUS.Columns.Insert(iIdx, Me.pSelected)
            dgvUS.Columns("pSelected").DisplayIndex = iIdx
            dgvUS.Columns("pSelected").SortMode = DataGridViewColumnSortMode.Automatic
            iIdx = iIdx + 1

            dgvUS.Columns.Insert(iIdx, Me.pCustomer)
            dgvUS.Columns("pCustomer").DisplayIndex = iIdx
            dgvUS.Columns("pCustomer").SortMode = DataGridViewColumnSortMode.Automatic
            iIdx = iIdx + 1

            dgvUS.Columns.Insert(iIdx, Me.pDetails)
            dgvUS.Columns("pDetails").DisplayIndex = iIdx
            dgvUS.Columns("pDetails").SortMode = DataGridViewColumnSortMode.Automatic
            iIdx = iIdx + 1

            dgvUS.Columns.Insert(iIdx, Me.pSelectCustomerInvoice)
            dgvUS.Columns("pSelectCustomerInvoice").DisplayIndex = iIdx
            iIdx = iIdx + …
Run Code Online (Sandbox Code Playgroud)

.net vb.net visual-studio-2010

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

.net ×1

vb.net ×1

visual-studio-2010 ×1