innhyul

Between tomorrow's dream and yesterday's regret is todays opportunity.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

这篇文章送给.net初学者或者遇到类似问题的朋友,就是IList如何格式化数据再绑定,我看到网上没有多少朋友讲到这方面的最基本的问题,现在我简单说说吧,代码我就截取其中一些讲,如果不明白的朋友可以留言或者联系我。

一、先讲最基本的 DataSet绑定操作,GridView为例。

当操作查询得一个 DataSet ds 后,可以进行一些数据的格式化,如:

 


                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    
if (dr["Depth"].ToString() != "1"
)
                    {
                        dr[
"ColumnName"= StringHelper.StringOfChar(Convert.ToInt32(dr["Depth"]) - 1" "+ "├ " + dr["ColumnName"
];
                    }
                }
                GridView1.DataSource 
=
 ds;
                GridView1.DataBind();

 


        public static class StringHelper
        {
            
/// <summary>

            
/// 生成指定长度的字符串,即生成strLong个str字符串
            
/// </summary>

            
/// <param name="strLong">生成的长度</param>
            
/// <param name="str">以str生成字符串</param>
            
/// <returns></returns>
            public static string StringOfChar(int strLong, string str)
            {
                
string ReturnStr = ""
;
                
for (int i = 0; i < strLong; i++
)
                {
                    ReturnStr 
+=
 str;
                }

                
return
 ReturnStr;
            }

            
/// <summary>

            
/// 生成日期随机码
            
/// </summary>

            
/// <returns></returns>
            public static string GetRamCode()
            {
                
#region

                
return DateTime.Now.ToString("yyyyMMddHHmmssffff");
                
#endregion

            }
        }

 

像这样很快就能进行一些数据的格式化并绑定到控件了。

 

二、现在讲下我主要想讲的内容,如果我们用Ilist 查询得数据后,想格式化一些字符串,以达到自己想要的显示效果,我们该怎么办呢?先看下效果图再给您答案。

 

 

比如我们在做无限分类的时候 往往想让数据如上图所显示,我们又该怎么做呢。

刚上让面的DataSet写了些格式化代码,现在相信大家都想知道Ilist又该怎么操作对吧?

泛型的功能 强大我在这里就不说了,现在说重点,主要有两种方法实现,

一,把Ilist得的数据转为 DataSet的,这样你又可以重新回到熟悉的操作了

IList 转 DataSet 类(这个是我引用别人的 ^ ^)

 

Code

 

然后

 

DataSet ds = ConvertToDataSet(b.ListColumn());

 

看,又回来熟悉的操作了吧,但是,这样做我们启不是走弯路了,为啥不直接用 DataSet就得了?没错,我们走弯路了............我想用 IList啊,不想转来转去的,难道就没有好的办法?

哈哈,答案肯定是有的,也是最简单的,往往是初学的朋友不懂解IList才现在种种疑惑,

现在讲IList 对象类的操作

还是上面的例子

比如当查询得一个

 

BLL b = new BLL();
b.ListColumn();

 

我们要绑定上图所示的只需这样做

 

Code

 

StringHelper还是上面的那个。经过这样的简单处理,我们就可以格式化 栏目名称了再分下DataList的绑定效果图,完毕!算是菜鸟与菜鸟之间的交流吧。

posted on 2009-11-19 21:52  bufferi  阅读(272)  评论(0编辑  收藏  举报