Drucken in C#

Codebug

Grünschnabel
Hallo Community,
ich hab im Moment ein Problem, wo ich einfach nicht weiterkomme. Hoffe ihr könnt mir weiterhelfen.

Schreibe gerade an einem Programm, welches eine Druckausgabe benötigt. Hierzu habe ich ein Klasse geschrieben die einen string erhält und dort den Ausdruck generiert.
Hier mal ein wenig Code fürs bessere Verständnis:


Code:
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
		{
			Graphics g = e.Graphics;
			printdoc prt = new printdoc(g, printstr);

und die klasse "printdoc" arbeitet dann mit "g" als "Graphics" weiter

Code:
public printdoc(Graphics g, string printstr)
		{
Codierung drucke = new Codierung("testtext","testtext","testtext", 25, 100, 7, 20, xpos,1);
andereclass ausgabe = new andereclass(drucke);
ausgabe.Zeichnen(g);

Das funktioniert auch soweit ganz gut, nur möchte ich jetzt aus einer anderen class diesen "printhandler" aufrufen. Hier komm ich nur nicht weiter, wie ich dort das selbe objekt (also printDocument1) einbinde.

Hoffe mein Problem einigermaßen verständlich niedergeschrieben zu haben.

Schonmal Dank für eure Hilfe
Codebug
 
Du müsstest eigentlich nur die Referenz auf dein PrintDocument weitergeben. Das sollte eigentlich reichen. Oder aber, deine Klasse implementiert ein entsprechendes Event, über welches die Daten (wenn sie denn dann fix fertig vorliegen) an die Form zurück übergeben werden (die Daten können aber auch als Eigenschaft bereitgestellt werden) und dann ausgedruckt werden. Ich würde eine der letzten beiden Varianten bevorzugen, kenne aber deinen Programmaufbau (die Voraussetzungen) nicht und daher ist auch Variante 1 angeführt - wenn auch sehr unsauber.
 
Hi,

mit ner Referenz hats geklappt! Hätte man auch selbst drauf kommen können :)

Dank Dir für den Wink mit dem ganzen Zaun.

Grüße Codebug
 
Zurück