Buenas a todos de nuevo,
tengo el siguiente codigo que cogie de otro hilo y que lo intento emplear para pasar de un datagrid a Excel.
Código:
Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=FileName.xls");
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
GridView1.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
El codigo se ejecuta cuando pulsas un boton y el problema es que me tira este error en la linea GridView1.RenderControl(htmlWrite);
El control 'GridView1' de tipo 'GridView' debe colocarse dentro de una etiqueta de formulario con runat=server.
Como no controlo mucho la parte de .aspx sino que lo mio es C# y poco, me podrïas ayudar??
El código del botón y del datagidview en .aspx es:
Código HTML:
<asp:Button ID="Button3" runat="server" onclick="Button3_Click"
Text="Exportar a Excel"
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="Fecha" DataFormatString="{0:yy-MM-dd/ hh:mm.ss}"
HeaderText="Fecha" SortExpression="Fecha" />
<asp:BoundField DataField="Presion" HeaderText="Presion"
SortExpression="Presion" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:cnxIbercoBoyas %>"
SelectCommand="SELECT [Fecha], [Presion], [Temperatura], [Conductividad], [Salinidad], [SatuOxigeno], [Oxigeno], [pH], [PotencialReductor], [Clorofila], [Turbidez], [Radiacion], [Transmitancia] FROM [MedicionSeparadaFiltrada] ORDER BY [Fecha]">
</asp:SqlDataSource>
Muchísimas gracias de antemano!!