海纳百川,有容乃大
善于总结,积累软财富

【标题】DataGrid 绑定定制的列

【需求】
               1、数据库中有张表lxt_User_Product,表中有个字段audited表示是否审核: 0-未审核 1-已审核
               2、在绑定DataGrid时,如果列的值为0,则显示未审核,1显示已审核
                

【解决方法】
                    1、在数据库中处理:在数据库中定义函数 changeState,等于0返回未审核,1返回已审核
         
                     数据库中定义的函数:      

                     CREATE FUNCTION  changeState (@state int ) 
                     RETURNS varchar(8)
                      AS  

                     BEGIN 
                         Declare @_temp varchar(8)

                       if @state=0
                         set @_temp= '未审核'
                     else   
                         set @_temp= '已审核'

                        return @_temp

                     END
                  
                     然后,使用SQL命令查询
                     select dbo.changeState(audited) as state from lxt_User_Product

                    在.NET中直接绑定定制(或转换)的列state就可以了。
  
                  2、.NET中处理:在DataTable对象中增加临时列

                         假设已经获得了 DataTable对象dt,下面是增加临时列的代码
                        
                       foreach(DataRow dr in dt.Rows)
                     {
                             if (dr["audited"].Tostring=="0")  
                              dr["state"] ="未审核";   //编码:HttpUtility.UrlEncode("未审核");
                             else 
                               dr["state"] ="已绑定"; //编码: HttpUtility.UrlEncode("已绑定");   
                     }

                  在DataGrid中绑定列state即可。

【关键词】DataGrid绑定定制的列 数据库中定义函数 DataTable中添加临时列
                           

posted on 2007-04-26 16:26  海纳百川  阅读(653)  评论(1编辑  收藏  举报

首页原创.NET区 div1
.NET新手区 div2
精华区 div3
专家区 div4
读书心得区 div5
百度主题实验室
百度主题推广 div7

-->