gridview多标题和后台生成标题控件
前台:
<div>
标题控件:<br/>
<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"OnRowCreated="GridView1_RowCreated">
<Columns>
<asp:BoundFieldDataField="M_Name"HeaderText="名称"/>
<asp:BoundFieldDataField="M_ID"HeaderText="字段ID"/>
</Columns>
</asp:GridView>
<br/>多标题:<br/>
<asp:GridViewID="GridView2"runat="server"AutoGenerateColumns="False"OnRowCreated="GridView2_RowCreated">
<Columns>
<asp:BoundFieldDataField="M_ID"HeaderText="字段ID1"/>
<asp:BoundFieldDataField="M_ID"HeaderText="字段ID"/>
<asp:BoundFieldDataField="M_Name"HeaderText="名称"/>
<asp:BoundFieldDataField="M_Name"HeaderText="名称1"/>
</Columns>
</asp:GridView>
</div>
后台绑定:
privatevoidbing()
{
stringsql="selectM_ID,M_NamefromModule";
DataTabledt=newDataTable();
dt=DBArticle.RunSqlDt(sql);
GridView1.DataSource=dt.DefaultView;
GridView1.DataBind();
GridView2.DataSource=dt.DefaultView;
GridView2.DataBind();
}
在表头添加下拉框:
protectedvoidGridView1_RowCreated(objectsender,GridViewRowEventArgse)
{
if(e.Row.RowType==DataControlRowType.Header)//是否是表头行
{
TableCellCollectiontcl=e.Row.Cells;//获得表头元素的实例
inti=1;
foreach(TableCellitemintcl)
{
stringHeadText=item.Text;//本来datatable的表头的自内容
DropDownListdro=newDropDownList();//创建表头下拉框
dro.ID="dro"+i.ToString();//表头ID
dro.Items.Insert(0,newListItem("--请选择--","-1"));
dro.Items.Add(newListItem("数学","0"));
dro.Items.Add(newListItem("语文","1"));
dro.Items.Add(newListItem("英语","2"));
item.Controls.Add(dro);//添加下拉框控件
Labellab=newLabel();
lab.ID="lab"+i.ToString();
lab.Text="</br>"+HeadText;
item.Controls.AddAt(1,lab);//此刻表头单元格已有下拉框的label控件
i++;
}
}
}
多标题:
protectedvoidGridView2_RowCreated(objectsender,GridViewRowEventArgse)
{
if(e.Row.RowType==DataControlRowType.Header)
{
TableCellCollectiontcHeader=e.Row.Cells;
tcHeader.Clear();
tcHeader.Add(newTableHeaderCell());
tcHeader[0].ColumnSpan=4;//合并第一行的4列
tcHeader[0].Text="截止到今日还有";
tcHeader[0].Text+="<strong>"+1111+"</strong>";
tcHeader[0].Text+="天</th></tr><tr>";
tcHeader.Add(newTableHeaderCell());
tcHeader[1].Style.Add("color","#004274");
tcHeader[1].Style.Add("height","30px");
tcHeader[1].ColumnSpan=2;
tcHeader[1].Text="姓名";
tcHeader.Add(newTableHeaderCell());
tcHeader[2].Style.Add("color","#004274");
tcHeader[2].Style.Add("height","30px");
tcHeader[2].ColumnSpan=2;
tcHeader[2].Text="密码</th></tr><tr>";
}
}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。