Datagrid中将表字段横排列

一种不用自定义datagrid的方法。

通过将datagrid栅格矩阵转置,尽管不是解决的最佳方案 ,但对于显示单条数据还是不错的。

code:

private   void  BindData()
{
    DataSet ds 
= this.GetDetail(); 
    DataSet new_ds = FlipDataSet(ds); 
    DataView my_DataView = new_ds.Tables[0].DefaultView;
    
this.my_DataGrid.DataSource = my_DataView;
    
this.my_DataGrid.DataBind();
}



public  DataSet FlipDataSet(DataSet my_DataSet)
{
    DataSet ds 
= new DataSet();
    
foreach(DataTable dt in my_DataSet.Tables)
    
{
        DataTable table 
= new DataTable();
        
for(int i=0; i<=dt.Rows.Count; i++)
        
{
            table.Columns.Add(Convert.ToString(i));
        }

        DataRow r;
        
for(int k=0; k<dt.Columns.Count; k++)
        
{
            r 
= table.NewRow();
            r[
0= dt.Columns[k].ToString();
            
for(int j=1; j<=dt.Rows.Count; j++)
                r[j] 
= dt.Rows[j-1][k];
        }

        table.Rows.Add(r);
    }

    ds.Tables.Add(table);
}

return  ds;
}

如果数据很多,建议用其他的实现方式。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值