【发布时间】:2013-09-05 10:24:01
【问题描述】:
我正在尝试为 GridView 设置 THEAD 类,并且我接近拥有一个没有 Class 属性的 Thead 元素并且具有我想要 tr 元素的类名。原因是因为 PDF 生成器会寻找一个 thead 类名并在每一页上生成表头。 PDF 生成器有时会出现渲染 javascript 的问题,所以我更喜欢页面上的纯 html 和 css。
除了数据绑定之外的代码。
GridView1.HeaderRow.TableSection = TableRowSection.TableHeader
aspx
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" HeaderStyle-CssClass="table-header-group">
<Columns>
<asp:BoundField DataField="Forename" HeaderText="Forename" ItemStyle-Width="150" ItemStyle-CssClass="iClass" />
<asp:BoundField DataField="Surname" HeaderText="Surname" ItemStyle-Width="150" ItemStyle-CssClass="iClass" />
</Columns>
</asp:GridView>
生成的 HTML
<table class="gvPrinting" cellspacing="0" rules="all" border="1" id="GridView1" style="border-collapse:collapse;">
<thead>
<tr class="table-header-group">
<th scope="col">Forename</th><th scope="col">Surname</th><th scope="col">DOB</th><th scope="col">Session Name</th><th scope="col">Password</th>
</tr>
</thead><tbody>
<tr>
<td colspan="5">+++</td>
</tr><tr>
我想要的是:
<thead class="table-header-group">
【问题讨论】:
-
您也许可以使用 HeaderStyle。 msdn.microsoft.com/en-us/library/…
-
@Papa 你的意思是 HeaderStyle-CssClass="table-header-group" 我已经在 gridview 中的这一行吗?它只设置 tr 的类而不是 thead 元素。
-
对不起,好像是一回事。想知道是否可以将类添加到 Pre_Render() 中的元素?
-
OnPreRender。哦是的。 stackoverflow.com/questions/5250258/…
-
谢谢,@Papa .. 我已经有了那个代码 .. 是的 .. 它添加了一个 thead 元素 .. 但是类属性仍然在 tr 上 ..