[Mise en page] Export Gridview vers Excel
Bonjour,
J'utilise le code d'export Excel que l'on trouve un peu partout et qui fonctionne pas trop mal. J'avais 2 points que je n'arrive pas à régler.
Mon GridView à l'en-tête de couleur bleu, quand je passe sur Excel c'est toute la ligne du fichier qui passe en bleu (ca dépasse du tableau pour aller jusqu'au bout du fichier.
Comment gérer les caractères spéciaux types accents ... ceux -ci ne passe pas ds l'export ou très mal.
Voici mon code pour info
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
public void Export_GridView_Vers_Excel(HttpResponse HttpRP, GridView Grille,String filename)
{
try
{
// Efface les éventuelles données déjà dans la mémoire tampon
HttpRP.Clear();
HttpRP.AddHeader("content-disposition", "attachment;filename=" + filename + ".xls");
//Place tout ce qui est destiné au client dans la mémoire tampon
HttpRP.Buffer = true;
//Définit le type d'informations renvoyée, ici des données au format Excel
HttpRP.ContentType = "application/vnd.xls";
//Efface le jeu de caractères actuellement défini
HttpRP.Charset = "";
//Instancie deux objets qui vont nous permettre de récupérer les données du Gridwiew : le StringWriter et l'HtmlTextWriter
StringWriter SW = new StringWriter();
HtmlTextWriter HT = new HtmlTextWriter(SW);
//Extrait le contenu du GridView dans l'HtmlTextWriter
Grille.RenderControl(HT);
//Copie le contenu extrait dans la mémoire tampon
HttpRP.Write(SW.ToString());
//Ferme "le flux" de données et envoie les données au client
HttpRP.End();
}
catch(Exception e)
{
HttpRP.Write(e);
}
} |
Merci de vos infos