Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

帅哥哟,离线,有人找我吗?
我的碗里有个晋晋
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:128 威望:0 精华:0 注册:2019/12/15 13:25:00
[求助]  发帖心情 Post By:2019/12/28 21:42:00 [只看该作者]

请大佬帮助,我想将"总表"内"抄送单位"一栏(复选框)内的"单位"在每被选中一次后,就在"所有单位"表中将该单位的编号+1,但我写的代码在表事件中点击确定没报错,但是在我每次点击选定"抄送单位"栏几个单位后,
却提示:
"Exception has been thrown by the target of an invocation.
Unable to cast object of type 'System.String[]' to type 'System.Collections.Generic.List`1[System.String]'."
请问是什么原因呢?烦请大佬解惑,谢谢!

Select Case e.DataCol.name                                                            '此代码写在DataTables("总表")内的表属性-DataColChanged内
    Case "抄送单位"                                                                          '现选定若干个抄送单位(抄送单位的值为链接到DataTables("所有单位")内"单位"列下的复选框)
        If e.DataRow("抄送单位") IsNot Nothing Then
            Dim cs As List(Of String) = e.DataRow("抄送单位").Split(",")   '将"抄送单位"复选框内的值以集合形式赋给变量cs
            Dim dws As List(Of String)
            dws = DataTables("所有单位").GetValues("单位")                    '将DataTables("所有单位")内的所有"单位"以集合形式赋给变量dws
            For Each dw As String In dws
                If cs.Contains("& dw &") = True Then                                '分别对DataTables("所有单位")内的"单位"进行判断,是否被包含在新添加的抄送单位内,如果包含
                    Dim dr As DataRow
                    dr = DataTables("所有单位").Find("单位 = '" & dw & "'")   '找到DataTables("所有单位")内该单位的行
                    dr("抄送单位编号") = dr("抄送单位编号") + 1                     '然后对该单位的抄送编号+1
                End If
            Next
        End If
End Select
[此贴子已经被作者于2019/12/28 21:42:02编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1353 积分:9868 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2019/12/29 8:59:00 [只看该作者]

If cs.Contains(dw) = True Then 

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


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/29 21:17:00 [只看该作者]

Select Case e.DataCol.name                                                            '此代码写在DataTables("总表")内的表属性-DataColChanged内
    Case "抄送单位"                                                                          '现选定若干个抄送单位(抄送单位的值为链接到DataTables("所有单位")内"单位"列下的复选框)
        If e.DataRow("抄送单位") IsNot Nothing Then
            Dim cs As new List(Of String)
            cs.AddRange(e.DataRow("抄送单位").Split(","))   '将"抄送单位"复选框内的值以集合形式赋给变量cs
            Dim dws As List(Of String)
            dws = DataTables("所有单位").GetValues("单位")                    '将DataTables("所有单位")内的所有"单位"以集合形式赋给变量dws
            For Each dw As String In dws
                If cs.Contains(dw) = True Then                                '分别对DataTables("所有单位")内的"单位"进行判断,是否被包含在新添加的抄送单位内,如果包含
                    Dim dr As DataRow
                    dr = DataTables("所有单位").Find("单位 = '" & dw & "'")   '找到DataTables("所有单位")内该单位的行
                    dr("抄送单位编号") = dr("抄送单位编号") + 1                     '然后对该单位的抄送编号+1
                End If
            Next
        End If
End Select

 回到顶部