Foxtable(狐表)用户栏目专家坐堂 → [分享]长文本编辑中的问题、狐表的bug及解决办法


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

主题:[分享]长文本编辑中的问题、狐表的bug及解决办法

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


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
[分享]长文本编辑中的问题、狐表的bug及解决办法  发帖心情 Post By:2012/10/9 12:48:00 [只看该作者]

一、长文本编辑中的问题

    1、有人习惯按回车键,这样,本来的1行变成了2行、甚至3行,当然,此时除了第1行其他都是空的。

    2、内容不同时分行输入(断行),如下月成本说明本来应该这样填写:

         柴油费5000,民工费10000

         却写成了这样:

         柴油费5000,

         民工费10000。

    但不管怎样输入,在狐表中都还是一行,不会出现任何差错。

    不过,有一个例外,就是输入“西北”和输入“西北”+回车,在狐表查找中是不一样的,前者是等于“西北”,后者只能是包含“西北”或like "西北*" 了。

二、狐表的bug

    如果复制某一列到另一列,则上述第1种情况会出现2、3个空行,第2种情况的1行将占据2行。结果:本列的最后几行被不该出现的空行和断行挤掉了,造成数据错位和丢失,后果可想而知。

三、解决办法

    被这些空行、断行折磨很久、浪费很多时间处理后(根本不能一次性复制、粘贴多列,否则就出错),觉得必须找到解决的办法。现在办法有了,与大家分享。

    由于无法控制每人的输入,因此必须新建菜单按钮(取名清回车/清理回车),便于整理、备份,特别适合项目已经交付使用,而你又要在不终止使用的情况下对其进行大改,此时在原项目上加上这么一个按钮就显得非常重要了。

    按钮代码如下(如果提示为0就不需要再次执行了):

Dim i As Integer =0
For Each dt As DataTable In DataTables
    For Each dc As DataCol In dt.DataCols
        If dc.IsString Then
            For Each dr As DataRow In dt.DataRows
                If dr(dc).Contains(chr(13) & chr(10)) Then
                    i=i+1
                    dr(dc)=dr(dc).replace(chr(13) & chr(10),"")
                End If
            Next
        End If
    Next
Next
messagebox.Show("本次清理了" & i & "个回车!","提示",MessageBoxButtons.ok, MessageBoxIcon.Information)

[此贴子已经被作者于2012-10-9 13:31:36编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/9 15:39:00 [只看该作者]

 呃,长文本的问题,就是应该包含回车的,这样才合理。

 如果你要看到所有,你可以通过列窗口看到列的内容嘛。

 不然就不应该用长文本来编辑你所需要的内容。

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


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2012/10/10 20:54:00 [只看该作者]

        楼上对长文本的用途有误解,帮助文件也说有换行符,但这不适合于项目已经交付使用、而您又要在不终止项目使用的情况下对项目进行大改的情况。因为大改之后必须将现在在用的数据全部复制到新项目上,我相信楼上肯定没有遇到过这种情况,而我的帖子中已经说得很明白了,我也确实已经被回车害惨了,否则也不会浪费时间编这段代码、发这个分享。

        因此,恳请楼上马上修改您的内容,不要贻误他人。

 


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2012/10/10 22:03:00 [只看该作者]

这些符号是给用户造成了一些困扰,比如复制后的粘贴。导出文本文件后的重新导入,都会将一行数据写(贴)入到多行。


 回到顶部