以下是引用mr725在2009-11-24 15:09:00的发言:
先把ID列按序列充填好:1、2、3、、、、、、、n;按钮代码 如下 :
Dim i As Integer = CurrentTable.Position
Dim v AS double
If i < 0 Then
CurrentTable.AddNew()
Return
ElseIf i = 0 Then
v = CurrentTable.Current("ID") - 1
CurrentTable.AddNew()("ID") = v
Else
Dim v1 As Double = CurrentTable.Rows(CurrentTable.Position - 1)("ID")
Dim v2 As Double = CurrentTable.Current("ID")
Dim s1 As String = v1
Dim s2 As String = v2
Dim c1 As integer = 0
Dim c2 As Integer = 0
If s1.IndexOf(".") > 0 Then
c1 = s1.Length - s1.IndexOf(".") -1
End If
If s2.IndexOf(".") > 0 Then
c2 = s2.Length - s2.IndexOf(".") -1
End If
If c1 = c2 Then
v = v1 + (v2 - v1) / 10 * 9
Else
Dim c As Integer = Math.Max(c2,c1)
Dim n As Integer = 1
v = v2 - 1 / 10 ^ c
If v <= v1
v = v2 - 1 / 10 ^ (c + 1)
End If
End If
CurrentTable.DataTable.AddNew()("ID") = v
End If
CurrentTable.Sort = "ID"
CurrentTable.Position = CurrentTable.FindRow("ID = " & v,0,True)
For ii As Integer = 0 To CurrentTable.Rows.Count-1
CurrentTable(ii,"ID") = ii+1
next
好使