以文本方式查看主题

-  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=16808)

--  作者:akzzwj
--  发布时间:2012/2/24 11:12:00
--  锁定 行

请问新曾一行 自动锁定上一行。那最后一行,如何锁定呢?比如,最后一行,5分钟没有编辑,自动锁定 怎么实现呢?


--  作者:akzzwj
--  发布时间:2012/2/24 11:25:00
--  

 就是 自动 锁定 最后一行 怎么实现啊?狐狸爸爸

 


--  作者:akzzwj
--  发布时间:2012/2/24 11:26:00
--  

狐狸爸爸 在吗


--  作者:狐狸爸爸
--  发布时间:2012/2/24 11:29:00
--  

1、在DataRowAdding事件设置代码:

 

If Tables(e.DataTable.Name).Current IsNot Nothing Then

    Tables(e.DataTable.Name).Current.Locked = True

End if   

 

2、看看:

http://www.foxtable.com/help/topics/0665.htm

 

 

 


--  作者:akzzwj
--  发布时间:2012/2/24 11:38:00
--  

上面的这个代码 不行啊

 


--  作者:akzzwj
--  发布时间:2012/2/24 11:39:00
--  

双击之后 还是可以编辑的

我希望锁定后,之后解锁之后,才可以编辑


--  作者:狐狸爸爸
--  发布时间:2012/2/24 11:40:00
--  

我测试下面的代码有效:

 

If Tables(e.DataTable.Name).Current IsNot Nothing Then

    Tables(e.DataTable.Name).Current.Locked = True

End if


--  作者:akzzwj
--  发布时间:2012/2/24 11:43:00
--  

狐狸爸爸 我在DataRowAdding事件中加入了上面的代码,可还是没有效果啊?双击之后,还是可以编辑


--  作者:狐狸爸爸
--  发布时间:2012/2/24 11:51:00
--  

上面的代码,是锁定增加行之前选择的哪一行,不是锁定所有行,也不是最后一行.

锁定最后一行:

 

With Tables(e.DataTable.Name)
    If .Rows.count > 0 Then
        Dim r As Row  = .Rows(.Rows.Count -1)
        r.locked = True
    End If
End With