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 :

Imprimer page Aspx tel qu'elle apparait à l'écran (avec les elements ajouter en code behind)


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 65
    Points : 40
    Points
    40
    Par défaut Imprimer page Aspx tel qu'elle apparait à l'écran (avec les elements ajouter en code behind)
    Bonjour,


    Toujours dans le développement d'une application je voudrais pouvoir mettre à la disposition de mes utilisateur un bouton "Imprimer" qui imprimerais la page tel quel est actuellement afficher à l'écran


    J'ai tester une fonction Javascript mais qui ne correspond pas exactement à ce que je voudrais car elle ne prend pas en compte les possibles tableau, div, style ... que je créer dirrectement créer dans la partie code behind (c#) de mon application asp.net

    Y a il une fonction qui me permettrais de faire ce que je voudrais à votre connaissance ?

    Pour info je vous met la fonction javascript que j'utilise actuellement :

    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
    21
    22
     
    function imprime_zone(titre, obj) {
                    // zone à imprimer
                    var z = document.getElementById(obj).innerHTML;
     
                    // Ouvre une nouvelle fenetre
                    var f = window.open("", "ZoneAImp", "height=300, width=500, toolbar=0, menubar=0, scrollbars=1, resizable=1,status=0, location=0, left=20, top=10");
     
                    // Définit le Style de la page
                    f.document.body.style.color = '#000000';
                    f.document.body.style.backgroundColor = '#FFFFFF';
                    f.document.body.style.padding = "10px";
     
                    // Ajoute les Données
                    f.document.title = titre;
                    f.document.body.innerHTML += " " + z + " ";
     
                    // Imprime et ferme la fenetre
                    f.window.print();
                    f.window.close();
                    return true;
                }

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Points : 158
    Points
    158
    Par défaut
    Bonjour,
    Si c'est juste pour avoir la page affichée par le navigateur, pourquoi tu n'installes pas tout simplement une appli du type "PDFCreator" qui va imprimer TOUT ce que le navigateur affiche ??
    nachtigal!!

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 65
    Points : 40
    Points
    40
    Par défaut
    Oui la seul chose que je voudrais faire c'est imprimer la page tel qu'elle est à l'écran

    Mais comment je peux faire pour que l'utilisateur imprimer la page grâce à un simple clique sur un bouton (si il est possible de faire cela avec PDFCreator je l'utiliserais mais c'est que je n'etais pas au courant et je ne vois pas comment faire)

    Pourrais tu me donner des informations à ce sujet svp ?

  4. #4
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2009
    Messages : 186
    Points : 206
    Points
    206
    Par défaut
    Bonjour,

    Pourquoi ne pas indiquer aux utilisateurs de se servir de l'impression proposée par les navigateurs ? Mis à part le fait que tu génère des styles à la volée, une chose spécifique t'en empêche ?

    Sinon, quelque chose comme ça devrait répondre à tes attentes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:Button ID="printButton" runat="server" Text="Print" OnClientClick="javascript:window.print();" />
    La politesse n'a jamais tué personne
    Le langage SMS c'est le mal !
    Pensez au tag

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Points : 158
    Points
    158
    Par défaut
    ptilemare, ta solution est la meilleure !!!!!

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 65
    Points : 40
    Points
    40
    Par défaut
    Tous d'abord merci a tous d'essayer de m'aider

    J'ai oublier de préciser que en effet j'avais tester la solution proposé par ptilemare mais le "problème" c'est que sa imprimer égalmement le menu de ma page et les bouton "action' du type le bouton qui sert a imprimer

    L'ideal (si possible à votre connaissance) serai d'imprimer le contenu d'une div par exemple qui encadrerais l'ensemble des infos voulu c'est pour cela que javais testé la solution évoquée dans mon premier message mais avec cette solution je ne prend pas en compte les info créer directement dans la partie code behind

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Points : 158
    Points
    158
    Par défaut
    Bonjour Gregney,
    C'est parce que tu essayes de "contourner" le problème...
    La véritable prise de tête en ASP.NET et pour toute appli web en générale est l'impression, et LA solution est de générer un Report dans lequel tu as la parfaite maîtrise de ce que tu veux afficher. Toutes les autres solutions sont approximatives, j'en ai essayé un bon nombre, et j'ai fini par rendre les armes et revenir au ReportViewer de base qui est intégré à Visual Studio...
    Une fois compris son fonctionnement, tu vas vraiment t'éclater !! et générer des Reports pour toutes sortes de raison possible !!
    Mais si tu y tiens, effectues une recherche sur google en espérant qu'un franc tireur a décidé d'en découdre avec ce problème depuis ce temps !!
    nachtigal!!

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 65
    Points : 40
    Points
    40
    Par défaut
    Bonsoir et merci pour vos réponses

    Dans d'autre application sur lequel j'ai pu intervenir précedement je fesai justement des pages contenant seulement les informations que je voulais imprimer.

    Mais le problème avec celle application c'est que je ne sais pas a l'avance ce que va contenir ma page vu que cela depend d'un certain nombre de requete qui provoque chacune la création d' élèments en code behind

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Points : 158
    Points
    158
    Par défaut
    Gregney, j'ai effectué quelques recherches pour toi, voici le résultat :

    ASP.NET - Print Only the Content Inside of Div

    Comment faire pour imprimer une partie d'une page web avec JavaScript

    Printing DIV Contents using Print Preview

    Jette également un coup d'oeil sur cette discussion

    Avec ça tu devrais trouver ton bonheur et nous dire quelle solution tu as retenue in-fine !!
    nachtigal!!

Discussions similaires

  1. Ajouter du code behind pour ma page aspx
    Par Wnejla dans le forum SharePoint
    Réponses: 9
    Dernier message: 07/05/2013, 09h05
  2. Réponses: 11
    Dernier message: 09/02/2011, 03h15
  3. Réponses: 12
    Dernier message: 22/06/2010, 11h09
  4. Réponses: 1
    Dernier message: 24/04/2006, 05h46
  5. [VB.NET] Imprimer une page aspx
    Par sehing dans le forum ASP.NET
    Réponses: 3
    Dernier message: 22/04/2005, 14h44

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