/ / Як експортувати asp: Поля TemplateField GridView для Excel у c #? - c #, asp.net, gridview

Як експортувати поля asp: GridView TemplateField для Excel в c #? - c #, asp.net, gridview

Хто-небудь має приклад (код або посилання), що дозволить мені експортувати поле шаблону gridview до Excel? Ось приклад того, що я маю на увазі. Припустимо, у мене є наступна декларація GridView:

<asp:GridView Id="gvResults" runat="server">
<Columns>
<asp:TemplateField HeaderText="Contact Info">
<ItemTemplate>
<b>Name:</b><%# Eval("Name") %><br/>
<b>Address:</b><%# Eval("Address") %><br/>
<b>Phone:</b><%# Eval("Phone") %><br/>
<b>E-mail:</b><%# Eval("Email") %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

Коли я експортую в Excel, я хочу експортувати поля в полі шаблону до стовпців у файлі excel, тому він буде виглядати так:

Назва Адреса Телефон Електронна пошта

==== ======= ==== =====

Джон 123 Rd 40330 J@j.com

Марк 456 St 22039 M@M.com

Відповіді:

2 для відповіді № 1

Дуже рекомендую всім, хто користується елементами керування asp gridview, розглянути можливість витрачати гроші на пакет третьої сторони (DevExpress мій улюблений)

Це, як кажуть, я використав це раніше, коли у мене не було іншого вибору


2 для відповіді № 2
    For i = 0 To gvExport.Rows.Count - 1
For j = rowsLeftTrimed To cellCount - 1

If gvExport.Rows(i).Cells(j).Text = String.Empty Then
Dim ctl As DataBoundLiteralControl = _
TryCast(gvExport.Rows(i).Cells(j).Controls(0), DataBoundLiteralControl)

If ctl IsNot Nothing Then
sw.Write(Chr(34) & ctl.Text.Trim & Chr(34) & ",")
End If

"Else
"    sw.Write(Chr(34) & gvExport.Rows(i).Cells(j).Text & Chr(34))
End If
Next
sw.WriteLine()
Next