Wpis z mikrobloga

hejo, mam pewną zagwozdkę związaną z #dotnet #csharp #dotnetcore #wpf. Potrzebuję dokonać konwersji z FlowDocument na XpsDocument, aby móc go wyświetlać w WPFowej kontrolce DocumentViewer, drukować itd. Jednakże napotkałem problem - dokument jest konwertowany i wyświetlany w DocumentViewerze poprawnie, jednakże gdy tylko najedzie się myszką na obrazek w dokumencie, to wywala System.IO.IOException: „Entries cannot be opened multiple times in Update mode.”
repo z prostym projektem, na którym można odtworzyć ten problem: https://bitbucket.org/kamilrams/wpf-xpsdocument-issue/src/master/

Kod odpowiedzialny za konwersję znajduje się w klasie FlowToXpsDocumentConverter.

Co ciekawe, postanowiłem nieco poeksperymentować - zamiast zwracać bezpośrednio XpsDocument do którego wykonywany był zapis, to stworzyłem drugi XpsDocument ze strumienia z poprzedniego dokumentu (metoda CopyDocumentFromStream) ... i wszystko zaczęło działać.

Mógłby mnie ktoś nakierować, co robię nie tak? Trochę średnio mi się podoba taki hack, niby działa, ale jednak wolałbym zrozumieć co w trawie piszczy :)

Dzięki!