Я использую код, похожий на код упоминания на
http://www.dutch -creatives.com / запись / 2009/08/11 / Экспортно-ListView к Excel.aspx
экспортировать ListView в Excel
Мой список
<asp:ListView ID="lv" runat="server">
<LayoutTemplate>
<table runat="server" id="table1" class="datatable" >
<tr class="row" id="tableRow" runat="server">
<th rowspan="2"></th>
</tr>
<tr runat="server" id="itemPlaceholder"></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr id="Tr1" runat="server" class="row">
<td id="Td1" runat="server">
<asp:Label ID="Label6" runat="server"
Text='<%#Eval("xyz") %>' />
</td>
</tr>
</ItemTemplate>
</asp:ListView>
Я добавляю заголовок следующим образом
' Create a form to contain the grid
Dim table = New HtmlTable()
Dim tCell = New HtmlTableCell()
Dim tRow = New HtmlTableRow()
'Add the header row
Dim header As HtmlTableRow = DirectCast(_listview.FindControl("tableRow"), HtmlTableRow)
ExlUtil.ConvertControl(header)
table.Rows.Add(header)
А затем каждый элемент как
For Each item As ListViewDataItem In _listview.Items
tCell.Controls.Add(item)
tRow.Controls.Add(tCell)
ExlUtil.ConvertControl(item)
table.Rows.Add(tRow)
Next
table.RenderControl(htw) //htw is htmltextwriter object
Но это (table.RenderControl) отображает окончательный HTML-код как
<table>
<tr>
<th></th>
<th></th>
<th></th>
</tr>
<tr> 'problem here
<td> 'problem here
<tr> <td></td> </tr>
<tr> <td></td> </tr>
</td>
</tr>
</table>
Я попытался отладить, понять, почему он генерирует дополнительный сигнал, но не смог.
Может кто-нибудь сказать мне, почему он генерирует эту дополнительную разметку tr, td?