I'm using code similar to code mention at http://www.dutch-creatives.com/post/2009/08/11/Export-ListView-to-Excel.aspx to export Listview to excel
My listview
<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>
I'm adding header as follows
' 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)
And then each item as
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
But this(table.RenderControl) is rendering final html code as
<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>
I tried to debug, understand why it is generating an extra tr td but couldn't. Can anyone tell me why it is generating that extra tr,td markup?