Foxtable(狐表)用户栏目专家坐堂 → 代码拼装的多列数据字典不显示


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

主题:代码拼装的多列数据字典不显示

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
代码拼装的多列数据字典不显示  发帖心情 Post By:2014/12/2 19:43:00 [显示全部帖子]

我在表事件(ChangeEdit)中写了如下代码:
If e.Col.Name = "khno"Then
     Dim dr As Row = e.Row
     Dim cmd As New SQLCommand
     Dim dt As DataTable
     'cmd.C 不写的话默认是内部数据源
     cmd.CommandText = "SELECT personno,name,sex,telephone,gw From {person} Where [companyno] = '" & dr("khno") &"'"
     dt = cmd.ExecuteReader()
     
     Dim mdm As New MultiDataMap 
     For Each dr1 As DataRow In dt.DataRows
        mdm.add(dr1("personno")&"|"&dr1("name")&"|"&dr1("sex")&"|"&dr1("telephone")&"|"&dr1("gw"))
     Next
    mdm.ValueCol = 0
    mdm.DisplayCol = 1
    Tables("order").Cols("linkman").DataMap = mdm.CreateDataMap()

End If

我的for循环中能取到我的查询出来的数据,但是为啥在表中显示不出这个多列数据字典呢?
如果我第一次时(第一行数据)触发这个事件生成了字典,那么我在第二次时(第一行数据)触发这个事件生成了字典这两次之间会不会有影响呢?

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 21:54:00 [显示全部帖子]

我又测试了一下,用表结构的话是可以的。可是我是写在窗口的一个table中就没这个效果,不知道为啥

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 21:56:00 [显示全部帖子]

如果是在窗口中的Table的话连下拉的效果都没有,可如果在表结构下就有这个效果

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:08:00 [显示全部帖子]

在项目属性的事件中关掉第三句代码,订单管理表结构能看到效果。打开第三句代码在窗口中就没有效果。生成多列字典的代码在表属性的ChangeEdit事件中
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:factoryproject.table


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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:10:00 [显示全部帖子]

这个生成多列字典的方式好像是对一列都起作用啊,有没有其它的比较好的方式。上一行的筛选条件和下一行的不一样啊。这样会有影响的啊

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:16:00 [显示全部帖子]

不执行的话能看到效果(这是在表结构中),如果执行的话是在窗口中这样就看不到效果

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:18:00 [显示全部帖子]

我是想在窗口table中有此效果

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:34:00 [显示全部帖子]

谢谢解答。现在还有一个问题就是我这段代码该写在哪儿呢(因为你说的现在的触发方工不好,可我也不知道怎样才能更好)?还有就是字典一旦发生变化原来的数据就显示不出来了,有没有其它的可选方案(其它的数据结构)呢?

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


加好友 发短信
等级:婴狐 帖子:47 积分:373 威望:0 精华:0 注册:2014/11/19 17:23:00
  发帖心情 Post By:2014/12/2 22:38:00 [显示全部帖子]

除了数据字典就没有其它的结构能实现,显示多列 实际存值是另一列吗?

 回到顶部