以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]enter 自定义事件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=121092)

--  作者:blsu33
--  发布时间:2018/6/29 8:19:00
--  [求助]enter 自定义事件
老师,
  如下代码,简单而且貌似没有LISTVIEW出现,没找到问题呢?
.NET Framework 版本:2.0.50727.8830
Foxtable 版本:2018.3.9.1
错误所在事件:自定义函数za_ck_Enter
详细错误信息:
调用的目标发生了异常。
无法将类型为“Foxtable.WinForm.ListView”的对象强制转换为类型“Foxtable.WinForm.Table”。


代码
Dim e =args(0)
Dim frm As String=args(1)

If e.Sender.Name.Contains("ccb_xs_") And forms(frm).Controls.contains(e.Sender.name.replace("ccb_xs","tab"))=True Then
    Dim tb As WinForm.Table = forms(frm).Controls(e.Sender.name.replace("ccb_xs","tab"))
    If e.Sender.Text = "select选择列(最好包括拼音)" Then
        e.Sender.Text = ""
    End If
    Dim s As String = ""
    MessageBox.Show(1)
    For Each c As Col In tb.Table.Cols
        If c.Visible=True Then
            s = s & c.Caption & "|"
        End If
    Next
    s = s.TrimEnd("|")
    e.Sender.ComboList = s
End If
\'MessageBox.Show(0)
\'If e.Sender.Name.Contains("txb_xs_") Then
    \'If e.Sender.Text = "Enter回车查询筛选树" Then
        \'e.Sender.Text = ""
    \'End If
\'End If
\'MessageBox.Show(1)
Return True
MessageBox.Show(2)

--  作者:有点甜
--  发布时间:2018/6/29 9:04:00
--  

加入红色代码

 

If e.Sender.Name.Contains("ccb_xs_") And forms(frm).Controls.contains(e.Sender.name.replace("ccb_xs","tab"))=True Then
msgbox(e.Sender.name)
msgbox(e.Sender.name.replace("ccb_xs","tab"))
msgbox(frm)
msgbox(forms(frm).Controls(e.Sender.name.replace("ccb_xs","tab").gettype.name)
    Dim tb As WinForm.Table = forms(frm).Controls(e.Sender.name.replace("ccb_xs","tab"))

--  作者:blsu33
--  发布时间:2018/6/29 11:21:00
--  
老师 ,
依次弹出如下

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180629112014.png
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2018/6/29 11:27:00
--  

1、弹出的内容,你对比一下是否正确啊;

 

2、改成 msgbox(forms(frm).Controls(e.Sender.name.replace("ccb_xs","tab")).gettype.name)


--  作者:blsu33
--  发布时间:2018/6/29 11:40:00
--  
呵呵 找到原因了