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

C# Discussion :

Imprimer un document XML en C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 1
    Par défaut Imprimer un document XML en C#
    Bonjour à tous,

    Je suis un total débutant en C#, on m'a demandé de faire dans ce langage un petit outil qui permet de récupérer des données et de les imprimer automatiquement (sans passer par la boite de dialogue de l'impression).

    Jusque là j'ai fait une application console, et j'ai réussi à récupérer les données que je voulais, et le mettre dans un document XML, que j'ai mis en page avec un fichier XSLT. Mais c'est là que je bloque. Je n'arrive pas à lancer l'impression automatique de ce fichier XML. J'ai fait des recherches sur le sujet, mais la plupart des tutos que j'ai trouvé utilise des éléments graphiques. J'aimerais donc savoir si il est possible de lancer une impression automatique d'un fichier XML tout en conservant sa mise en page XSLT.

    Merci à vous

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    bonjour

    Pour faire ce genre de chose, j'opterais pour la solution suivante:

    Une fois que ton document est généré (transformation de ton XML par du XSLT), j'ouvrirais le document dans un control WebBroser (qui peut ne pas être visible, bien sur)

    et ensuite, je ferais un coup de Print() à partir du WebBroser.

    Pour sélectionner l'imprimante par défaut, tu peux faire appel à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    [DllImport("winspool.drv", CharSet = CharSet.Auto, SetLastError = true)]
            public static extern bool SetDefaultPrinter(string Name);
     
           public void PrintMyDocument  {
                SetDefaultPrinter("PDFCreator");
    WB.Navigate(chemin de ton document à imprimer);
                WB.Print();
    }
            }
    Après, dans mon exemple, comme j'imprime avec PdfCreator, j'ai obligatoirement la fenetre de sélection de PdfCreator qui apparait. Mais si tu sélectionnes une
    imprimante à toi, ya de forte chance que tu n'es rien d'affiché !

Discussions similaires

  1. Serialiser de gros documents XML
    Par philemon_siclone dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 17/09/2003, 15h26
  2. recherche dans un document xml via DOM
    Par ndoye_zaff dans le forum APIs
    Réponses: 5
    Dernier message: 11/06/2003, 14h44
  3. Réponses: 3
    Dernier message: 03/06/2003, 13h16
  4. Stocker du texte mis en forme dans un document XML
    Par ovh dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 13/02/2003, 10h23
  5. pb formatage document XML généré par un dom tree
    Par lionel69 dans le forum APIs
    Réponses: 11
    Dernier message: 17/10/2002, 09h53

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