我有一个 gridview,在第一列中我添加了一个表格来创建第二行:
我希望发货人地址跨越 GridView 中的所有列。
代码:
<asp:GridView CssClass="printTableResults" runat="server" ID="gvHawb"
ShowHeaderWhenEmpty="false"
DataKeyField="ID"
OnRowDataBound="gvHawb_RowDataBound"
AutoGenerateColumns="false"
allowpaging="false">
<HeaderStyle CssClass="printTableHeader" />
<RowStyle CssClass="borderB" />
<Columns>
<asp:TemplateField HeaderText="HAWB" HeaderStyle-Font-Bold="true" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<table>
<tr>
<td><asp:Label ID="lblAwbNumber" runat="server" Text='<%# Eval("AWBNumber") %>'></asp:Label></td>
</tr>
<tr>
<td><label>Shipper</label></td>
<td><asp:Label ID="lblFullShipperAddress" runat="server" Text='<%# Eval("FullShipperAddress") %>'></asp:Label></td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Pieces" HeaderStyle-Font-Bold="true" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Label ID="lblPieces" runat="server" Text='<%# Eval("TotalNoOfPieces") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
有没有办法让shipper跨越gridview的行? 该 gridview 中共有 8 列。
最佳答案
您可以尝试将包含发货人地址的表格移至 ItemTemplate
外表的最后一列。然后把 table 放在自己的tr
上。像这样的事情:
<ItemTemplate>
<asp:Label ID="lblPieces" runat="server" Text='<%# Eval("TotalNoOfPieces") %>'></asp:Label>
</tr> <!-- end the outer table row -->
<tr colspan="7"> <!-- start new row in the outer table -->
<table>
<tr>
<td><asp:Label ID="lblAwbNumber" runat="server" Text='<%# Eval("AWBNumber") %>'></asp:Label></td>
</tr>
<tr>
<td><label>Shipper</label></td>
<td><asp:Label ID="lblFullShipperAddress" runat="server" Text='<%# Eval("FullShipperAddress")%>'></asp:Label></td>
</tr>
</table>
</ItemTemplate>
请注意,您不应该以</tr>
结尾。因为外表渲染会添加它。
这个答案是在没有任何实际测试的情况下组合在一起的,所以我不能保证它会“开箱即用”。
关于asp.net - 如何将行跨度添加到 GridView 中的第一列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36361352/