|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
刚刚打开这篇专题,猛然见到HAL9000发表的《对于大型公司项目平台选择j2ee的几层认识》系列,深受启发。在项目中一向都是用ASPxGridView控件,免不了必要在ASPxGridView控件上完成多表头,自己研讨了完成多表头的两种办法,以供人人参考。
因ASPxGridView与GridView控件差未几,以下思绪一样也合用于微软的GridView控件。
以下代码中表头的细节处置为自己项目所需,读者可依据本人的需求修正代码。
办法一:在Render事务中重写AspxGridView表头,次要思绪是猎取到表头工具,再重绘表头。
protectedoverridevoidRender(HtmlTextWriterwriter)
{
GridViewHtmlTabletable=(GridViewHtmlTable)this.grid.FindControl("DXHeaderTable");
table.Rows.Clear();
TableRowtr=newTableRow(); //第一行
TableCelltc;
for(inti=0;i<18;i++)
{
tc=newTableCell();
//本人的tc处置逻辑
tr.Cells.Add(tc);
}
table.Rows.AddAt(0,tr);
tr=newTableRow(); //第二行
for(inti=1;i<=9;i++)
{
tc=newTableCell();
//本人的tc处置逻辑
tr.Cells.Add(tc);
}
table.Rows.AddAt(1,tr);
base.Render(writer);
}
办法二:在AspxGridView的行创立事务中重绘表头,次要思绪是在创立表头时就依据本人的必要创立。
protectedvoidgrid_HtmlRowCreated(objectsender,ASPxGridViewTableRowEventArgse)
{
if(e.RowType==GridViewRowType.Data&&e.VisibleIndex==grid.PageIndex*grid.SettingsPager.PageSize)
{
Tabletable=e.Row.ParentasTable;
table.Rows.RemoveAt(0);
TableRowtr=newTableRow(); //第一行
TableCelltd;
for(inti=0;i<8;i++)
{
tc=newTableCell();
//本人的tc处置逻辑
tr.Cells.Add(tc);
}
table.Rows.AddAt(0,tr);
tr=newTableRow(); //第二行
for(inti=0;i<6;i++)
{
tc=newTableCell();
//本人的tc处置逻辑
tr.Cells.Add(tc);
}
table.Rows.AddAt(1,tr);
}
}
你觉得数据库怎么样? |
|