IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Boite de Dialogue "ouvrir,enregistrer"


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    33
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 33
    Par défaut Boite de Dialogue "ouvrir,enregistrer"
    Bonjour,
    C'est la première fois que je poste sur ce se site donc désolé si je ne suis pas au bon endroit

    Etant actuellement en stage de développement pour mon DUT Informatique depuis deux semaines, j'ai dû découvrir .NET et C#.
    Le but de mon stage est de réaliser un "annuaire" qui permet de rechercher les personnes qui font parties de l'entreprise, basé sur Active Directory.

    Un utilisateur peut effectuer une recherche selon : un nom, un prénom, un pôle métier, ou un site. Le résultat de la recherche est affiché par l'intermediaire d'une GridView.

    J'arrive à un moment du projet qui me pose problème. Je dois mettre à disposition de de l'utilisateur la possibilité de récupérer le résultat de sa cherche dans un tableur Excel. Je suis en train de coder la partie qui exporte les données de la GridView dans un fichier Excel ( la dessus ca va ). Mon problème est le suivant : je voudrais mettre en place un petit bouton qui lorsque l'utilisateur cliquera dessus, lui affichera comme une boite de dialogue
    avec "ouvrir", "enregistrer" ...
    J'ai fait des recherche sur le net mais je n'ai rien trouvé

    Que dois je mettre en place pour avoir cette "boite de dialogue" ??
    Et si quelqu'un avait un exemple de code ça serait super

    Merci d'avance pour les solutions que vous pourrez m'apporter

    PS : désolé pour ce long discours mais je voulais bien définir la situation pour mieux cibler mon problème.

  2. #2
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    Bonne nouvelle pour toi : tu n'as rien à faire pour obtenir cette fenêtre. Il te suffit simplement, lorsque tu envoies le contenu du fichier au client, de bien spécifier le ContentType (donc que c'est un fichier Excel dans ton cas) et le navigateur affichera tout seul comme un grand la fenêtre de dialogue.

    En espérant avoir répondu à ta question.

  3. #3
    Membre averti
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    33
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 33
    Par défaut
    Bonjour,

    Déjà merci d'avoir pris le temps de me répondre

    Donc j'ai compris que je n'avais rien de spécial à faire pour la "fenêtre" ( ça m'arrange ).

    Par contre je ne sais pas comment "envoyer" le fichier au client ??

    Pourrais tu me dire comment faire s'il te plait ?

    Merci d'avance.

    ElViRuS

  4. #4
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    C'est ton second message ici alors je vais pas être méchant, mais la prochaine fois pour ce genre de question => GOOGLE ! Il faut apprendre à chercher par soi même, surtout pour un informaticien à l'ère d'Internet

    Donc un exemple de base pour le rendu d'une GridView :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    string attachment = "attachment;  filename=Employee.xls";
    Response.ClearContent();
    Response.AddHeader("content-disposition",   attachment);
    Response.ContentType =  "application/ms-excel";
    StringWriter stw = new StringWriter();
    HtmlTextWriter htextw = new  HtmlTextWriter(stw);
    maGridView.RenderControl(htextw);
    Response.Write(stw.ToString());
    Response.End();
    Après il y a d'autres manière de faire (notamment pour le contenu du fichier à envoyer au client). Mais le principe de base est là.

  5. #5
    Membre averti
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    33
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 33
    Par défaut
    Merci bien pour la réponse.

    Mais comme j'avais dit dans mon premier post j'ai cherché sur le net et
    j'avais trouvé ce code ( à peu de chose près ) mais je ne savais pas trop
    à quoi ça correspondait et il n'y avait pas d'explication

    En tout cas merci de ton aide, je vais me pencher plus attentivement sur
    ton bout de code

  6. #6
    Membre averti
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    33
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 33
    Par défaut
    Bon ba au final avec un .xls ça fonctionnait mais seulement si je mettais :

    try{
    GridView1.RenderControl(htextw);
    }catch()
    {
    }

    J'ai plus ou moins solutionné le problème : j'ai abandonné le .xls pour un
    .csv qui m'apporte moins de problèmes ( gérer le fait que l'utilisateur n'aura
    peut-être pas Excel et donc ne pas utiliser "son application Excel"
    pour construire le .xls).

    Et du coup avec le .csv ça fonctionne très bien

    Merci bien Nicolas pour m'avoir mis sur la piste

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/09/2010, 06h22
  2. Réponses: 0
    Dernier message: 06/01/2010, 12h25
  3. ouvrir la boite de dialogue "Enregistrer Sous"
    Par midoparis dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/05/2008, 14h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo