Bonsoir,
Je souhaiterai savoir si je peux ajouter un bouton qui permet d'imprimer mon datagridview avec une imprimante matricielle non pas jet d'encre. Comment faire ?
Merci de m'aider
Bonsoir,
Je souhaiterai savoir si je peux ajouter un bouton qui permet d'imprimer mon datagridview avec une imprimante matricielle non pas jet d'encre. Comment faire ?
Merci de m'aider
Décomposons le problème en 2 étapes:Pour l'étape 2), voici des solutions :
- Le plus facile : transformer le datagridView en un fichier texte affichable via le bloc-note.
- Plus compliqué : imprimer ce fichier texte sur l'imprimante matricielle.
- Soit imprimer depuis C#. Voir le lien indiqué dans cette discussion : http://www.developpez.net/forums/d10...e-matricielle/) ou ici : http://www.codeproject.com/KB/printing/lprinter.aspx
- soit, faire un test consistant à ouvrir un fichier texte avec le bloc-note et l'imprimer sur l'imp matricielle, et si ça marche lancer une commande Print depuis c# (voir code ci-dessous)
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
23 internal static bool PrintDocument(string FileName,string MatricePrinterName) { bool Result=false ; if (!System.IO.File.Exists(FileName)) MessageBox.Show("File to be printed was not found : "+FileName) ; else try { System.Diagnostics.Process TheProcess = new System.Diagnostics.Process() ; TheProcess.StartInfo.FileName = FileName ; TheProcess.StartInfo.Verb = "Printto" ; TheProcess.StartInfo.Arguments= MatricePrinterName ; TheProcess.StartInfo.CreateNoWindow = true ; TheProcess.Start() ; Result=true ; } catch (Exception Ex) { MessageBox.Show("File print error on "+ FileName+Environment.NewLine+Ex.Message.ToString()) ; } return Result ; }
Mais moi j'ai une application VB.NET , est ce que pour la première méthode du bloc note:est ce que je peut créer un bouton qui utilise le bloc note sans que l'utilisateur ne voie rien pour imprimer?
est pour la deuxième méthode comment je peux utisliser le c# et moi je travail sur VB.NET?
Désolé j'avais pas fait attention à Vb/C#.
Pour la première méthode il faut trouver un code équivalent enVb.
Pour la 2ème, c'est pareil en Vb qu'en C# : on créée un objet de type System.Diagnostics.Process et on initialise certaines de ses valeurs.
Mais auparavant, faire un test consistant à ouvrir un fichier texte avec le bloc-note et l'imprimer sur l'imp matricielle, et si ça marche ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Dim TheProcess As System.Diagnostics.Process = New System.Diagnostics.Process() TheProcess.StartInfo.FileName = ...
J'ai vu sur google le crystal report je pense qu'il permet d'imprimer sur imprimante matricielle mais le problème que je suis débutant j'ai rien compris qu'est ce que le crystal report et comment je peux l'utiliser pour imprimer un datagridviw et quelques label.
Partager