Foxtable(狐表)用户栏目专家坐堂 → 请问如何实现离开当前行就锁定的功能?


  共有2929人关注过本帖树形打印复制链接

主题:请问如何实现离开当前行就锁定的功能?

帅哥哟,离线,有人找我吗?
蓝色理想
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:561 积分:4284 威望:0 精华:0 注册:2014/6/12 19:15:00
请问如何实现离开当前行就锁定的功能?  发帖心情 Post By:2014/9/3 12:08:00 [只看该作者]

例子:
     新增加一行,编辑此行后,一旦离开此行,就锁定

请高手指点一下,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/3 12:18:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
蓝色理想
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:561 积分:4284 威望:0 精华:0 注册:2014/6/12 19:15:00
  发帖心情 Post By:2014/9/3 13:32:00 [只看该作者]

If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
    If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
        Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
        If r.Locked <> True Then
            r.Locked = True
        End If
        If e.Table.Current.DataRow.RowState <> DataRowState.Unchanged Then
            r.Save() '保存之
            MessageBox.Show("保存了")
        End If
    End If
End If

这段代码不能为啥不能自动保存?
难道这条语句 r.Locked = True
不会改变行状态?(已确定行没被锁定,这条语句执行后已执行了锁定操作)


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/3 14:28:00 [只看该作者]

If e.OldRange.RowSel <> e.NewRange.RowSel '如果选择的是不同的行
    If e.OldRange.RowSel >= 0 AndAlso e.OldRange.Rowsel < e.Table.Rows.Count Then '而且原来选择的是一个有效的数据行
        Dim r As Row = e.Table.Rows(e.OldRange.Rowsel) '获得原来选择的行
        r.Locked = True
        r.Save() '保存之
        MessageBox.Show("保存了")
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
包头123
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1049 积分:8150 威望:0 精华:0 注册:2011/10/11 11:13:00
  发帖心情 Post By:2014/9/3 14:30:00 [只看该作者]

很好。收藏。

 回到顶部