Foxtable(狐表)用户栏目专家坐堂 → [求助] DataColChanged事件相关问题


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

主题:[求助] DataColChanged事件相关问题

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
[求助] DataColChanged事件相关问题  发帖心情 Post By:2016/6/29 17:10:00 [只看该作者]

Dim cmd As New SQLCommand
    cmd.ConnectionName= gs_strActiveConn
    cmd.CommandText= "s elect 窗体ID from {窗口程序说明} where [窗口名称] = '" & e.Form.name & "'"
    Dim dtName As DataTable = cmd.ExecuteReader
    If dtName.DataRows.Count > 0 Then
        cmd.CommandText= "s elect * from {窗体控件对应表} where [窗体ID] = " & dtName.DataRows(0)("窗体ID")
    Else
        cmd.CommandText= "s elect * from {窗体控件对应表} where 1=2 "
    End If
    Dim dt As DataTable = cmd.ExecuteReader(True)
    MessageBox.Show("dt.count=" & dt.DataRows.Count)
    If ListAnniu.Count > 0 Then
        For Each List As object In ListAnniu
            Dim dr As DataRow = dt.Find("控件名称 = '" & List.name & "'")
            If dr Is Nothing Then
                dr = dt.AddNew()
                dr("窗体ID") = dtName.DataRows(0)("窗体ID")
                dr("控件名称") = List.name
                dr("权限控制") = False
                dr("控件ID") = dr("_Identify")
            End If
            dr("控件标题") = List.Text
            dr("控件类型") = "按钮"
            'dr("权限控制") = False
            dr("删除") = False
            dr("修改时间") = system_Mydate 
           ' dr("权限类型") = ???  
        Next
    End If    

红色代码赋值后为 0

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/29 17:29:00 [只看该作者]

试试

 

dr.Save

dr("控件ID") = dr("_Identify")


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/30 7:45:00 [只看该作者]

大红袍老师:我这样做了后,dr("控件ID") 成了空的

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/6/30 8:50:00 [只看该作者]

新增的_Identify 还没有生成

循环完毕后保存表,然后用sql更新

If ListAnniu.Count > 0 Then
    For Each List As object In ListAnniu
        Dim dr As DataRow = dt.Find("控件名称 = '" & List.name & "'")
        If dr Is Nothing Then
            dr = dt.AddNew()
            dr("窗体ID") = dtName.DataRows(0)("窗体ID")
            dr("控件名称") = List.name
            dr("权限控制") = False
            'dr("控件ID") = dr("_Identify")
        End If
        dr("控件标题") = List.Text
        dr("控件类型") = "按钮"
        'dr("权限控制") = False
        dr("删除") = False
        dr("修改时间") = system_Mydate
        ' dr("权限类型") = ???
    Next
    dt.save
    cmd.CommandText= "upd ate 窗体控件对应表 set [控件ID]=[_Identify] where [控件ID] is null"
    cmd.ExecuteNonQuery
End If

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/30 11:50:00 [只看该作者]

谢谢老师

 回到顶部