itemtemplate 列を含む gridview があり、レンダリングされた html に余分な tr が生成されます。CellPadding="0" CellSpacing="0" と AutoGenerateColumns="false" を設定しましたが、役に立ちません..
ここに私のグリッドビューがあります:
<asp:GridView ID="GridView1" GridLines="None" runat="server"
CellPadding="0" CellSpacing="0" ShowFooter="true"
AutoGenerateColumns="false" AllowPaging="true" OnPageIndexChanging="Grid_PageIndexChanging">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<table cellpadding="0" cellspacing="0" border="0" width="100%"
class="table_sabcho">
</HeaderTemplate>
<ItemTemplate>
<tr id="sds">
<td><a href="show_item.aspx?id=<%# DataBinder.Eval (Container.DataItem, "id") %>">
<%# DataBinder.Eval(Container.DataItem, "number")%></a>
</td>
<td><%# DataBinder.Eval(Container.DataItem, "date","{0 :dd/MM/yyyy}")%>
</td>
<td><%# DataBinder.Eval(Container.DataItem, "Category")%></td>
<td><%# DataBinder.Eval(Container.DataItem, "type_name")%>
</td>
<td style="padding-left: 0;"><%# getDoc((DataBinder.Eval(Container.DataItem, "id")).ToString())%>
</td>
</tr>
</ItemTemplate>
<FooterTemplate></table> </FooterTemplate>
</asp:TemplateField>
</Columns>
グリッドをデータバインドする方法は次のとおりです。
protected void GetLastNewsGrid()
{
String query = "Select * from sample_view order by id desc";
DataSet lawdataset = SqlHelper.ExecuteDataset(connString, CommandType.Text, query);
GridView1.DataSource = lawdataset;
GridView1.DataBind();
}
ここにレンダリングされたhtmlがあります:
<tr id="it is empty.." >
<td></td>
</tr>
<tr id="sds" >
<td><a href="show_item.aspx?id=518"> 4965/2/12 </a></td>
<td>24.12.2012 </td>
<td></td>
<td>dep </td>
<td style="padding-left: 0;"><a class="pdf_box" href="common/get_doc.aspx?docID=6900" ></a></td>
</tr>