你能告诉我如何在每个单元格中添加每个td生成的div吗?
<asp:GridView ID="XDataGridView"
CssClass="XDataGridView"
ClientIDMode="Static"
AllowPaging="True"
AllowSorting="True"
OnSorting="XDataGridView_Sorting"
OnPageIndexChanging="XDataGridView_PageIndexChanging"
Font-Size="Smaller"
runat="server"
EnablePersistedSelection="True"
OnRowDataBound="XDataGridView_RowDataBound"
OnRowCreated="XDataGridView_RowCreated"
SelectedRowStyle-BackColor="#FF7900"
meta:resourcekey="XDataGridViewResource1">
<HeaderStyle CssClass="XDataGridViewHeader" BackColor="DimGray"
BorderColor="#FF7900" HorizontalAlign="Center" VerticalAlign="Middle" Font-Size="10" Height="34" />
<PagerSettings Visible="false" />
<RowStyle BorderColor="#FF7900" Height="34" Font-Size="10" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<div id="insideDiv" runat="server"></div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我需要每当网格在html中生成其表格时,每个td内容都将包含在div元素中。乍一看应该是一件容易的事,虽然我不知道该怎么做。我尝试过使用ItemTemplate,但似乎没有任何区别。
答案 0 :(得分:1)
您可以在ItemTemplate
。
<ItemTemplate>
<div><%# Eval("columnA") %></div>
</ItemTemplate>
div元素不需要runat="server"
来运行。
<强>更新强>
如果使用AutoGenerated列,则可以使用RowDataBound事件添加<div>
。
protected void XDataGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
//check if the row is a datarow
if (e.Row.RowType == DataControlRowType.DataRow)
{
//loop all the cells in the row
for (int i = 0; i < e.Row.Cells.Count; i++)
{
e.Row.Cells[i].Text = "<div>" + e.Row.Cells[i].Text + "</div>";
}
}
}