以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  光标自动移动到新增行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=3904)

--  作者:卟离卟弃
--  发布时间:2009/8/18 16:08:00
--  光标自动移动到新增行
按钮公式
Dim dst As WinForm.DataList = e.Form.Controls("DataList1")
For i As integer = 0 To dst.Count - 1
    If dst.GetChecked(i) Then
        Dim dr1 As DataRow = dst.GetDataRow(i)
        Dim dr2 As DataRow = DataTables("出库").AddNew()
        dr2("物品代码") = dr1("物品代码")
    End If
Next

新增一行复制“物品代码”到“出库”表新增行的 物品代码列 中
可是光标却在原地不动,并没有移置到按钮新增的行

怎么样修改代码,又不改变代码原来意思,并把光标自动移置 到新增行上。。。

--  作者:kylin
--  发布时间:2009/8/18 16:17:00
--  
Dim dr2 As DataRow = DataTables("出库").AddNew()
改一下:
Dim dr2 As Row = Tables("出库").AddNew()

帮助中是有说明的
--  作者:yangming
--  发布时间:2009/8/18 16:25:00
--  
这样改,光标可以到表的新增行,但是对DataList1无效
Dim dr2 As Row = Tables("表A").AddNew()

--  作者:卟离卟弃
--  发布时间:2009/8/18 16:35:00
--  
改过,提示,,错误,,说什么不能用在Row中。。。
--  作者:卟离卟弃
--  发布时间:2009/8/18 16:38:00
--  

谢谢杨姐,可以了

哎,那天看了菜鸟兄的作品,感觉荒废了两个月的时间 。。。。

现在没事在做一个工具管理文件,,加深学习。。。


--  作者:狐狸爸爸
--  发布时间:2009/8/18 16:48:00
--  
我测试:

Dim dr2 As Row = Tables("表A").AddNew()

是可以的啊
--  作者:yangming
--  发布时间:2009/8/18 16:49:00
--  
以下是引用狐狸爸爸在2009-8-18 16:48:00的发言:
我测试:

Dim dr2 As Row = Tables("表A").AddNew()

是可以的啊

是可以


--  作者:yangming
--  发布时间:2009/8/18 17:01:00
--  
想请教贺老师一下,楼主的这段代码,如果将DataList1改成Table,那代码如何改呢?

Dim dst As WinForm.DataList = e.Form.Controls("DataList1")
For i As integer = 0 To dst.Count - 1
    If dst.GetChecked(i) Then
        Dim dr1 As DataRow = dst.GetDataRow(i)
        Dim dr2 As DataRow = DataTables("出库").AddNew()
        dr2("物品代码") = dr1("物品代码")
    End If
Next

--  作者:狐狸爸爸
--  发布时间:2009/8/18 17:41:00
--  
现在更简单:

Dim dst As Table = Tables("某表")
For i As integer = 0 To dst.Count - 1
    If dst.Rows(i).Checked Then
        Dim dr1 As DataRow = DataTables("出库").AddNew()
        dr("物品代码") = dst.Rows(i)("物品代码")
    End If
Next

--  作者:yangming
--  发布时间:2009/8/18 18:45:00
--  
以下是引用狐狸爸爸在2009-8-18 17:41:00的发言:
现在更简单:

Dim dst As Table = Tables("某表")
For i As integer = 0 To dst.Count - 1
    If dst.Rows(i).Checked Then
        Dim dr1 As DataRow = DataTables("出库").AddNew()
        dr("物品代码") = dst.Rows(i)("物品代码")
    End If
Next

谢谢,学习了