标题:请教一个DataGridView 排序的题?
取消只看楼主
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
 问题点数:0 回复次数:5 
请教一个DataGridView 排序的题?
有哪位高手帮我看看,能不能实现字符排序如下所示:

升序       降序
1          20
2          10
10         2
20         1

是字符型的。
我是在SortCompare 事件里面处理的,但就是不能实现,SortMode 是Automatic。代码如下:

        private void gridView_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
        {
            int Length1 = e.CellValue1.ToString().Length;
            int Length2 = e.CellValue2.ToString().Length;
            if (Length1 == Length2)
            {
                e.SortResult = System.(e.CellValue1.ToString(), e.CellValue2.ToString());
            }
            else
            {
                if (Length1 > Length2)
                    e.SortResult = 1;
                else e.SortResult = -1;
            }
        }
请各位高手看看问题出在哪?
搜索更多相关主题的帖子: DataGridView 
2008-07-24 17:00
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
得分:0 
有呀,就是不能实现像上面这样的,所以我想自已处理,
自带的排序是这样的结果:

升序        降序
1           20
10          2
2           10
20          1

请问有没其它方法可以实现我最上面的这种结果
2008-07-24 17:07
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
得分:0 
就是因为在比较"10"跟"2"时,"2"要大于"10",所示才想出这样的方式来比较,要么就转换成int型的再比较,但是都无法实现我最上面的那种排序,
有哪位高手帮帮忙,看看是什么原因?最好能给段代码。
2008-07-25 17:14
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
得分:0 
回复 6# shmilylee 的帖子
谢谢楼上给我的意见,我只是想在包含字符与数字的字符串里,当字符相等时,以数字来排序,有没有更简单更快的方法可以实现的?我学这个不久,请多指点一下。
2008-07-26 10:12
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
得分:0 
就是在Datagridview里,要实现:"a1","a2","a10","a20"这样的排序,其默认排序应该是:"a1","a10","a2","a20";请问如何实现,多指点一下。
2008-07-27 09:47
lu88138
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-7-24
得分:0 
谢谢楼上所说的方法,这两种方法我之前都做过了,我这里说的是有没有其它的方法。
2008-07-29 08:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-225099-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.220300 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved