DataView排序问题 vb.net
我想做一个技师的排钟,就是要更改它的顺序!
Dim n As Integer = Me.GridView3.FocusedRowHandle
GridView3.FocusedRowHandle = n
Dim dv3 As DataView = Me.GridView3.DataSource
Dim i, j As Integer
If n = 0 Then
MsgBox("已到第一个", 64, "信息提示")
Else
i = dv3(n).Item("OrderNo") '当前序号
j = dv3(n - 1).Item("OrderNo") '上一行序号
dv3(n).Item("OrderNo") = j
dv3(n - 1).Item("OrderNo") = i
dv3.Sort = "OrderNo Asc"
gTempDateTable.AcceptChanges()
Me.GridView3.FocusedRowHandle = j - 1
End If
gTempDateTable.AcceptChanges()
我做了一个但是只能移动几次就移动不到了。请高手帮我看看!急急
[解决办法]
先排好序dv3.Sort = "OrderNo Asc",再调用下面的更改过程
Dim n As Integer = Me.GridView3.FocusedRowHandle
Dim dv3 As DataView = Me.GridView3.DataSource
Dim i, j As Integer
If n = 0 Then
MsgBox("已到第一个", 64, "信息提示")
Else
i = dv3(n).Item("OrderNo") '当前序号
j = dv3(n - 1).Item("OrderNo") '上一行序号
dv3(n).Item("OrderNo") = j
dv3(n - 1).Item("OrderNo") = i
GridView3.EndEdit()
me.BindingContext(GridView3.DataSource).EndCurrentEdit
gTempDateTable.AcceptChanges()
Me.GridView3.FocusedRowHandle = n - 1 '关键
End If