以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  复制上一行代码  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=10648)

--  作者:实话实说
--  发布时间:2011/6/16 10:42:00
--  复制上一行代码
下面代码是复制上一行部分列数据到新增行,我想将其应用到窗口中的表,通过按钮操作. 

If e.DataTable.DataRows.Count = 0 Then \'如果是一个空表
   
Return \'那么返回
End
If
Dim
ColNames As String() = {"日期","客户","雇员"} \'定义一个数组,保存复制列的名称
Dim
dr As DataRow = e.DataTable.DataRows(e.DataTable.DataRows.Count - 1) \'获得最后一行
For
Each ColName As String in ColNames
    e.
DataRow(ColName) = dr(ColName) \'将最后一行的内容复制到新增行中.

Next


--  作者:lihe60
--  发布时间:2011/6/16 10:51:00
--  

用“克隆”。


--  作者:实话实说
--  发布时间:2011/6/16 11:01:00
--  

表的数据列较多,克隆行后还要做删除操作,不方便,容易漏删


--  作者:程兴刚
--  发布时间:2011/6/16 11:34:00
--  
同样用代码置空不就可以了!
--  作者:blackzhu
--  发布时间:2011/6/16 11:52:00
--  
If Tables("表B").count=0 Then   \'如果表B是一个空表
Dim r As Row =Tables("表B").addnew()    \'就增加一行
Else   \'否则
Dim ColNames As String() = {"IO"}    \'要复制的列名
    Dim dr As Row = Tables("表B").Rows(Tables("表B").Rows.Count - 1) \'获得最后一行
    Dim r2 As Row=Tables("表B").AddNew()    \'在表B中增加行
    For Each ColName As String In ColNames
        r2(ColName) = dr(ColName) \'将最后一行的内容复制到新增行中.
Next        
    
End If

--  作者:实话实说
--  发布时间:2011/6/16 11:52:00
--  
等进一步的帮助
--  作者:blackzhu
--  发布时间:2011/6/16 12:20:00
--  
这个不行?
--  作者:实话实说
--  发布时间:2011/6/16 12:29:00
--  

行了,谢了.