L'exportation GridView à Excel sans perdre de lignes de la grille dans Excel
J'ai un GridView que je veux exporter vers Excel. Lorsque j'utilise l'exemple de code que j'ai trouver en ligne, il exporte le contenu de Excel, mais pour quelque raison il efface également toutes les lignes de la grille à l'extérieur de ma table exportée.
Pour la moyenne de votre utilisateur d'excel c'est assez facile à corriger, mais j'ai besoin de cette solution fonctionne pour tout le monde.
Alors est-il un moyen d'exporter les données dans un contrôle GridView dans un Classeur Excel de sorte qu'on dirait qu'il a été tapé juste dans Excel? Je l'ai collé le code, je suis en utilisant ci-dessous, supposons qu'un GridView appelé toPrint existe et a des données précises.
Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=" + name + "_Registration_Forms.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.ms-excel";
Page.EnableViewState = false;
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
toPrint.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
EDIT: Trouvé une solution partielle. Si je l'exportation comme une liste séparée par des virgules et définir l'en-tête d'un fichier CSV, il ouvre fine et toutes les lignes de la grille (même ceux en dehors de l'exportation de données) sont à l'affiche. Le seul problème avec cela est bien sûr d'avoir à sortir la bande chaque virgule et le caractère de saut de ligne à partir de mes valeurs avant de les exporter.
pour ceux qui seraient intéressés, o.k.w le commentaire que j'y suis allé. Il n'est pas parfait parce que maintenant j'ai de la bande des virgules à partir du contenu que je suis l'exportation, mais à la fin, les utilisateurs préfèrent cette approche.
vous pouvez essayer d'utiliser le caractère de tabulation au lieu d'une virgule pour séparer les valeurs
OriginalL'auteur Justin C | 2010-03-04
Vous devez vous connecter pour publier un commentaire.
Le Post suivant m'a donné la réponse. http://forums.asp.net/t/1074110.aspx
Je vais résumer de quoi faire avec le code.
OriginalL'auteur Mistlin
J'ai utilisé la fonction d'assistance ci-dessous dans le passé. Je viens de donner à l'utilisateur une case qu'ils pourraient choisir d'inclure les lignes de la grille ou pas. Évidemment, vous pouvez changer ce toujours inclure les lignes de la grille.
Ceci est un exemple de la façon dont vous l'appelleriez:
Aussi, que le code des poignées de montrer ou ne pas montrer le quadrillage de la grille des valeurs de sortie pour excel. Il ne fait rien pour le reste des cellules dans le classeur.
David Verre...sympa l'extrait de code. C'est un gardien!
OriginalL'auteur David Glass
J'ai eu le même problème de ne pas obtenir les lignes de la grille lors de l'exportation vers Excel.
La façon dont j'ai résolu c'était en mettant
Gridlines="Both"
à l'intérieur de la<datagrid>
tag.OriginalL'auteur kiruthiga
VB
C#
OriginalL'auteur Ray de la Garza