2010-07-13 14 views
1

J'essaie d'ajouter des en-têtes/pieds de page à un WPF FlowDocument. J'ai trouvé une solution sur Internet here qui utilise une classe de pagination personnalisée pour ce faire. Malheureusement, cela ne fonctionne que lors de l'impression du document, ce qui n'est pas ce que j'ai l'intention de faire. Mon idée était d'utiliser un FlowDocumentPageReader ou quelque chose de similaire avec un paginateur personnalisé, mais de toute façon je ne peux pas comprendre comment je ferais cela, peut-être que n'importe qui peut me donner un indice dans la bonne direction.Affichage d'un FlowDocument multi-paginé avec des en-têtes répétitifs

Répondre

1

Si vous affichez simplement FlowDocument et ne l'imprimez pas, vous pouvez implémenter des en-têtes et des pieds de page en créant un modèle de contrôle pour FlowDocumentPageViewer.

Dans le modèle, placez des blocs de texte au-dessus et au-dessous de DocumentPageView et associez-les aux valeurs appropriées.

Par exemple, si vous voulez un numéro de page:

<TextBlock Text="{Binding Path=MasterPageNumber, RelativeSource={RelativeSource TemplatedParent}" FontSize="14" FontWeight="Bold" /> 

et ainsi de suite pour le titre, etc.

Vous pouvez envelopper les TextBlocks et DocumentPageView avec une frontière si la chose apparaît comme un page.

+0

Oui cela fonctionne, merci pour la réponse. En attendant, j'ai piraté quelques trucs ensemble, mais je vais essayer ça tout de suite! –