Bonjour,

j'ai voulu tester le tutoriel présent à l'URL suivante : http://webman.developpez.com/article.../aspnet2excel/

Quand j'exécute, j'ai une erreur :
"...type gridview dois être placé dans une balise form avec ruant = "server"

Le problème c'est que c'est déjà le cas... D'autre personnes ont eu le souci mais ils n'ont pas donné de réponse.

Page aspx
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="export.aspx.cs" Inherits="export" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
 
<body>
 
    <div>
         <form id="form1" runat="server">
         <asp:gridview ID="Gridview1" runat="server"></asp:gridview>
         <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
         </form>        
    </div>
 
</body>
</html>
code behind
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
protected void Page_Load(object sender, EventArgs e)
    {
 
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Clear();
        Response.Buffer = true;
        Response.ContentType = "application/vnd.ms-excel";
        Response.Charset = "";
        Response.AddHeader("Content-Disposition", "attachment;filename=\"commande02.xls\"");
 
        System.IO.StringWriter stringWrite = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htmlWrite = new System.Web.UI.HtmlTextWriter(stringWrite);
        Gridview1.RenderControl(htmlWrite);
        Response.Write(stringWrite.ToString());
 
        Response.End();
    }

Merci