GridView.DataSource ist während PostBack @ nu
Ich möchte eine Druck- / Download-CSV von jeder Gridview in meiner Anwendung implementieren. Diese beziehen ihre Daten über Datenquellen oder direkt über
gvSample.DataSource = Data;
gvSample.DataBind();
etzt war mein erster Ansatz, einen Download-Button in das Footer-Template zu setzen und den Download dort zu erledige
<asp:GridView ID="gvSample" runat="server">
<PagerTemplate>
<asp:ImageButton ImageUrl="~/download.gif" OnClick="dl_Click" runat="server" ID="dl"/>
</PagerTemplate>
</asp:GridView>
un
protected void dl_Click(object sender, ImageClickEventArgs e)
{
GridView gv = (GridView)this.Parent.Parent.Parent.Parent;
string csv = ToCSV(gv.DataSource); //gv.DataSource is null, DatasourceID aswell
Response.ContentType = "application/csv";
Response.AddHeader("content-disposition", "attachment; filename=file.csv");
Response.Write(csv);
Response.End();
}
Aber ich kann nicht auf die Daten zugreifen.