it167.com  设为主页
 收藏本站
 
  资讯:业界动态 | 软件动态 | 人物专栏 | 安全资讯 | 网络生活 | 电子商务 | 小游戏 | 视频 | 美女图片 | 音乐
  网络编程 | 网站运营 | 网页制作 | 图形图象 | 操作系统 | 媒体动画 | 软件教学 | 网络应用 | 邮件系统 | 网络安全 | 认证考试
asp | .net | php | jsp | Sql | java | Dreamweaver | FrontPages | Javascript | css | Coreldraw | photoshop | Flash | Coreldraw
当前位置: > 主页>网络编程>Asp.net>Asp.Net开发技巧>在.NET中,将竖表变横表(支持固定列)
最新新闻

·机会与整合 边缘化互联
·TOM-Skype新增三大本地
·雅虎抢闸邮箱竞赛 网易
·新浪抢攻北京奥运
·洞悉网络口碑的掘金机会
·拆解网络病毒黑金交易
·木马下载器近期出现新变
·《互联网周刊》第17期文
·Web2.0是否催生自吹自擂
·三张宝宝裸照招来MSN封
热门新闻
·2003服务器的.net程序不
·跳出封装剖析ASP.NET脚
·简写的通用数据层代码
·在ASP.NET程序中实现语
·.net的Membership,为什
·开发手记之实现web.conf
·Asp.net 2.0 Treeview
·DataGridView 的分页处
·充分利用ASP.NET的三种
·Web.config详解+asp.net
推荐新闻
 
 

在.NET中,将竖表变横表(支持固定列)  

作者:   来源:it167   点击:   日期:2007-06-11

竖表变横表(支持固定列)

根据LoveCherry的竖变横方法改进而来
        public DataTable MakeData(DataTable dt,int iColumnSize,int[] iColumnID) //iColumnsize:重复列数 iColumnID 需要横向排列的列的序号数组
        {  
            int ColumnCount=iColumnID.Length;
            int totalRows=dt.Rows.Count;
            int itmp=dt.Rows.Count%iColumnSize; //行数
            int iRows; //行数
            if(itmp==0)
                iRows=dt.Rows.Count/iColumnSize;
            else
                iRows=dt.Rows.Count/iColumnSize+1;
            DataTable newdt=new DataTable();
            for(int i=0;i<iColumnSize;i++)
            { 
                for(int j=0;j<ColumnCount;j++)
                {  string aa=dt.Columns[iColumnID[j]].ColumnName+i;
                    int bb=iColumnID[j];
                    DataColumn dc=new DataColumn(dt.Columns[iColumnID[j]].ColumnName+i,dt.Columns[iColumnID[j]].DataType);
               
                    newdt.Columns.Add(dc);
                }
            }
            for(int i=0;i<iRows;i++)
            {        
                DataRow dr=newdt.NewRow();
                for(int j=0;j<iColumnSize;j++)
                {
                    for(int k=0;k<ColumnCount;k++)
                    {
                        if((i+j*iColumnSize)<dt.Rows.Count)
                        { 
                            string aa=dt.Columns[iColumnID[k]].ColumnName+j;
                            try
                            {
                                dr[dt.Columns[iColumnID[k]].ColumnName+j]=dt.Rows[iRows*j+i][iColumnID[k]];
                            }
                            catch
                            {}
                        }
                    }
                }
                newdt.Rows.Add(dr);                
            }
            return newdt;
        }



文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·开发手记之实现web.config的快速配置 ·Asp.net 2.0 Treeview 无限级无刷新示例
·.net的Membership,为什么就这么困难呢? ·DataGridView 的分页处理
·在ASP.NET程序中实现语音合成 ·充分利用ASP.NET的三种缓存提高站点性能

   文章评论:(0条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:it167  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。