WPF DocumentViewer не показывает документ - PullRequest
2 голосов
/ 11 ноября 2010

Я использую DocumentViewer для просмотра FixedDocument и на 2 компьютерах (из более чем 500) программа просмотра документов не показывает документ.

Редактировать: хорошо, это не ошибка в WPF, и элемент управления DocumentViewer работает отлично, я оставляю этот вопрос без изменений, если кто-то еще сталкивается с той же проблемой, см. Мой ответ для решения.

  • Средство просмотра документов использует пользовательский шаблон ControlTemplate на основе этого образца MSDN (в основном для удаления поля поиска)

  • Панель инструментов, полоса прокрутки и фон все отображаются, но полоса прокрутки отключена и содержимое пустое (цвет фона)

  • Я уверен, что документ в порядке, потому что печать документа работает.

  • У меня нет доступа к этим машинам, одна из них работает под управлением Vista в стандартной конфигурации, я даже не знаю, какая версия Window запущена на другой.

  • Приложение нацелено на .net 3.5

У кого-нибудь здесь когда-нибудь была подобная проблема? ты хоть представляешь, что это вызывает?

Спасибо.

1 Ответ

0 голосов
/ 16 ноября 2010

Вот что случилось, я использовал PrintDialog, чтобы получить размер бумаги по умолчанию для принтера, чтобы создать FixedDocument, в соответствии с документами и всеми моими тестами, вы можете использовать PrintDialog, фактически не открывая диалоговое окно или фактически печатая что-либо, и все работает простохорошо.

Но на некоторых компьютерах (возможно, из-за неправильной работы драйверов принтера) это не работает, поэтому на этих компьютерах был возвращен неверный размер бумаги, я на самом деле не знаю, был ли он слишком мал илидва больших, но это привело к тому, что код, генерирующий FixedDocument, не прошел какую-то внутреннюю проверку работоспособности и создал и очистил документ - тогда элемент управления DocumentViewer отображался правильно, ничего не показывая.

...