Foxtable(狐表)用户栏目专家坐堂 → 如何在foxtable中实现易表的“排序项目”功能?


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

主题:如何在foxtable中实现易表的“排序项目”功能?

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/10/11 22:32:00 [显示全部帖子]

类似易表的排序项目现在是没有的。

加个辅助列吧,如果排序项目不多,可以用表达式列,iff下去就可以了,如果排序项目多,还是用数据列,然后用代码简单一些,生成顺序后再对辅助列进行排序。


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/10/11 23:57:00 [显示全部帖子]

个人认为还是用数据列简单,因为用那么多iif写起来费劲,而用代码只是几行而已。

比如:

 

If e.DataCol.Name = "科目" Then
    Dim Str As String = "化学|生物|历史|地理|语文|数学|英语|物理|政 治|"
    If Str.IndexOf(e.DataRow("科目") & "|") > -1 Then
        e.DataRow("排序") = Str1.IndexOf(e.DataRow("科目") & "|")
    End If
End If

 

也可以:

 

If e.DataCol.Name = "科目" Then
    Dim Values() As String = "化学|生物|历史|地理|语文|数学|英语|物理|政 治".split("|")
    For i As Integer = 0 To Values.Length -1
        If Values(i) = e.DataRow("科目")
            e.DataRow("排序") = i
        End If
    Next
End If

 

 


 回到顶部