以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]表PrepareEdit事件代码出现字符显示消失程序卡顿  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132950)

--  作者:chh2321
--  发布时间:2019/4/2 21:02:00
--  [求助]表PrepareEdit事件代码出现字符显示消失程序卡顿
老师,我在表的PrepareEdit事件中写下如下代码,

If e.IsFocusCell Then \'如果是焦点所在单元格
    Dim aa() As String ={"T","N","M"}
    For Each a As String In aa
        If e.Col.Name = a Then \'如果正在编辑的是a列
            Dim dmp As New TableDataMap
            dmp.DataTable = "TNMStage" \'指定数据来源表
            dmp.ValueCol = "TNM" \'指定取值列
            dmp.DisplayCol = "TNM" \'指定显示列
            dmp.ListCols = "肿瘤类型,TNM,分期标准,Version"
            dmp.Filter = "[肿瘤类型] = \'" & e.Row("肿瘤类型") & "\' and [TNM] Like \'" & a & "%" & "\'"
            Tables("tblCStage").Cols(a).DataMap = dmp.CreateDataMap() \'生成并设置DataMap
        End If
    Next   
End If
程序可以运行,如图1:
 
图片点击可在新窗口打开查看此主题相关图片如下:图1.jpg
图片点击可在新窗口打开查看
 
 
但鼠标点击下方单元格时,上方已编辑单元格的字符就不显示了,如图2:
 
图片点击可在新窗口打开查看此主题相关图片如下:图2.jpg
图片点击可在新窗口打开查看
 
 
当鼠标再次点击已编辑单元格,消失的字符又显示了,如图3:
 
图片点击可在新窗口打开查看此主题相关图片如下:图3.jpg
图片点击可在新窗口打开查看
 
 
而且程序好像很慢,有明显卡顿现象。请问老师,这是什么原因,如何处理呢?





--  作者:chh2321
--  发布时间:2019/4/2 21:22:00
--  

附项目文件

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:有点蓝
--  发布时间:2019/4/2 21:25:00
--  
不要在PrepareEdit设置动态字典,这是一个无法解决的bug

代码放到AfterSelChange事件
Dim cl As Col = e.Table.Cols(e.NewRange.ColSel)
dim r as row = e.Table.Rows(e.NewRange.RowSel)
Dim aa() As String ={"T","N","M"}
    For Each a As String In aa
        If cl.Name = a Then \'如果正在编辑的是a列
            Dim dmp As New TableDataMap
            dmp.DataTable = "TNMStage" \'指定数据来源表
            dmp.ValueCol = "TNM" \'指定取值列
            dmp.DisplayCol = "TNM" \'指定显示列
            dmp.ListCols = "肿瘤类型,TNM,分期标准,Version"
            dmp.Filter = "[肿瘤类型] = \'" & r("肿瘤类型") & "\' and [TNM] Like \'" & a & "%" & "\'"
            e.Table.Cols(a).DataMap = dmp.CreateDataMap() \'生成并设置DataMap
        End If
    Next   

--  作者:chh2321
--  发布时间:2019/4/2 21:37:00
--  

 

把代码放到AfterSelChange事件后,仍出现字符消失的问题


图片点击可在新窗口打开查看此主题相关图片如下:2019-04-02_21-30-33.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2019/4/2 21:48:00
--  
显示不全是因为数据没有加载。如果使用字典必须加载全部数据。如果做动态加载的,建议使用自定义下拉窗口:http://www.foxtable.com/webhelp/scr/2465.htm