В моем приложении WPF есть несколько объектов FixedDocument, которые я хочу отображать вместе в DocumentViewer, как если бы они были одним документом.
Отобразить один FixedDocument в средстве просмотра документов очень просто:
myDocumentViewer.Document = myFixedDocument;
Моей первой идеей было создать FixedDocumentSequence для всех моих FixedDocuments (которое также можно установить как значение DocumentViewer.Document, так как оно реализует IDocumentPaginatorSource). Но при создании FixedDocumentSequence можно добавлять только объекты DocumentReference. Не существует прямого способа добавить FixedDocument напрямую, и я не могу понять, как создать и добавить DocumentReference, который каким-то образом связан с одним из моих Фиксированные документы.
Моей второй идеей было создать мастер-документ FixedDocument, а затем перебрать все FixedDocument и переместить их страницы в мастер-документ FixedDocument. Но при попытке сделать это я сталкиваюсь со всевозможными проблемами (со страницами, уже принадлежащими другому документу (без возможности удалить их из этого документа! и т. д. и т. д.)
Моя третья идея состояла в том, чтобы создать и построить временный XpsDocument и получить FixedDocumentSequence, который он создает автоматически. Я немного рассмотрел это, но это становится излишне сложным, поэтому я решил сначала опубликовать здесь, чтобы узнать, есть ли какие-либо другие идеи, или помочь с моими первыми двумя попытками!