WPF - Automatische Zeilennummer für FlowDocument?

9

Ich beginne gerade mit einer Vertragsgenerierungsroutine für mein aktuelles Projekt und eine der Anforderungen ist, dass jede der Zeilen im Vertrag nummeriert werden muss. Die Nummer sollte sich am linken Rand befinden, wobei eine vertikale Regel die Nummerierung vom Rest des Dokumentinhalts trennt.

Ich bin mir ziemlich sicher, dass ich diese Anforderung mit einem FixedDocument lösen kann, aber es wird keinen Spaß machen. Kann ich das trotzdem mit einem FlowDocument machen?

    
Sonny Boy 20.05.2011, 14:48
quelle

1 Antwort

5

Sie können dies mit einem FixedDocument ganz einfach mit meiner WpfPrint-Hilfsklasse tun, die unten aufgeführt ist. Um es für die XPS-Erstellung zu verwenden, verwenden Sie einfach den Konstruktor für XPS:

%Vor%

Sie können jetzt durchgehen und hinzufügen, was Sie wollen; TextBlocks sind wahrscheinlich das, wonach Sie gesucht haben:

%Vor%

Sie wickeln sich selbst ein, wenn Sie sie eingepackt erstellen; jeder Gegenstand, wie er hinzugefügt wird, wird gemessen. Wenn es nicht auf die Seite passt, fügt die Hilfsklasse eine neue Seite hinzu und leitet sie auf die neue Seite weiter, sodass Sie von FlowDocument erhalten, was Sie wollten. Sie können CurX und CurY jederzeit ändern, um beim Platzieren von Objekten horizontalen oder vertikalen Platz zu überspringen. Wenn Sie fertig sind, können Sie auf einem Drucker wie folgt drucken:

%Vor%

Oder Sie können als XPS-Datei speichern:

%Vor%

Hier ist die Helferklasse. Genießen! Sie werden nie wieder ein FlowDocument verwenden wollen: -)

%Vor%     
Ed Bayiates 27.05.2011 01:09
quelle

Tags und Links