J'ai besoin de récupérer les parties d'en-tête/pied de page d'un document OpenXML dans l'ordre dans lequel elles apparaissent dans le document.Ordre des en-têtes/pieds de page dans le document OpenXML
suivantes: -
foreach (HeaderPart header in document.MainDocumentPart.HeaderParts)
{
...
}
-appears à itérer à travers le HeaderParts
sans ordre particulier.
Quelqu'un peut-il expliquer comment les commander correctement? Soit en utilisant OrderBy, ou en accédant au HeaderParts
différemment?
Edit: Exemples
Par exemple: -
Dans un document exemple, j'ai plusieurs sauts de section. Chaque section a un en-tête/pied de page différent: -
- Section 1 => Section 1 pied
- Section 2 => Section 2 Pied de page
- Section 3 => Section 3 Pied de page
- Section 4 => Section 4 Pied de page
Il n'y a pas d'en-têtes ou de pieds de page «différents de première page» ou «différents» dans le document. Lorsque je tente d'itérer sur ces pieds en utilisant document.MainDocumentPart.FooterParts
, ils n'apparaissent pas dans l'ordre 1, 2, 3, 4. Je n'ai pas pu déterminer la logique derrière l'ordre dans lequel ces pieds apparaissent dans la séquence. Je soupçonne qu'ils ne sont pas commandés.
J'ai besoin d'eux dans l'ordre.
Ce n'est certainement pas un artefact de "foreach". Les pieds de page apparaissent dans la séquence dans le mauvais ordre pour commencer. –
voulez-vous dire qu'ils apparaissent à l'envers? Cette raison pour cela dans Open XML est due à l'ordre z des endroits où les objets doivent apparaître. –
Non, ils apparaissent dans un ordre imprévisible. Parfois vers l'avant, parfois vers l'arrière, parfois mélangé. –