以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  自动编号的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24392)

--  作者:胡啰啰儿
--  发布时间:2012/10/12 16:22:00
--  自动编号的问题

假如表中第一列为编号,整数型,已经输入了内容,更改某一行的编号后,从下一行开始自动加1,怎么实现?

 

 

如:

005

006

007

008

009

 

 

将007改为123后,008、009自动改为124、125


--  作者:lin_hailun
--  发布时间:2012/10/12 16:37:00
--  
 代码这样写,在DataColChanged事件

Select Case e.DataCol.Name
    Case "第一列"
        Dim drs As List(Of DataRow) = e.DataTable.Select("_SortKey > " & e.DataRow("_SortKey"), e.DataCol.Name)
        If drs.Count > 0 Then
            Dim i As Integer = 1
            For Each dr As DataRow In drs
                dr(e.DataCol.Name) = Format(e.NewValue + i, "000")
                i = i + 1
            Next
        End If
End Select

--  作者:胡啰啰儿
--  发布时间:2012/10/15 1:04:00
--  
谢谢啊,搞定了,不过不知道_SortKey 是什么意思,帮助里没看到
--  作者:lin_hailun
--  发布时间:2012/10/15 8:58:00
--  
以下是引用胡啰啰儿在2012-10-15 1:04:00的发言:
谢谢啊,搞定了,不过不知道_SortKey 是什么意思,帮助里没看到

_SortKey列是系统列,不显示在表中,用于记录行的位置。