2009-07-24 6 views
4

J'ai un ItemsCollection hébergé à l'intérieur d'un ScrollViewer suffisamment grand pour couvrir plusieurs pages lors de l'impression. J'ai jusqu'à présent réussi à imprimer une seule page en utilisant PrintVisual(itemsControl) mais d'après ce que j'ai lu, je dois aborder l'impression d'un seul contrôle sur plusieurs pages différemment. Quelqu'un pourrait-il me pointer dans la bonne direction?Imprimer WPF ItemsControl sur plusieurs pages

Merci!

Répondre

1

Ce que vous devez faire est l'écrêtage.

Vous devez calculer la taille du clip et découper l'image du contrôle en quantité requise de portions en fonction de la taille de votre page et maintenir ces images de clip dans une liste et les envoyer à votre logique de pré-impression.

Procédure:
Vous devez conver le visuel en RenderTargetBitmap avec le codage nécessaire. Puis, en utilisant CroppedBitmap, vous pouvez découper l'image bitmap dans la dimension requise. Ensuite, maintenez ces clips dans un List<Image> comme ça. Ensuite, itérez et imprimez-les en utilisant votre logique d'impression. Si vous voulez un échantillon, je vais essayer de fournir. Je pense est très vieux poste. J'espère que cela sera utile pour quelqu'un à l'avenir.

0

Vérifiez cette implémentation de WPF Reports sur CodePlex. J'ai utilisé ceux-ci dans une de mes applications qui fait exactement cela. Si vous voulez savoir comment ... il suffit de regarder dans le code.

Questions connexes