Причина этого в том, что FlowDocument
s DocumentPaginator
не обрабатывает UserPageRange
s.Вы можете видеть, что реализация FlowDocument
создает FlowDocumentPaginator
, и она не учитывает диапазоны.
Если она справилась, в FlowDocumentPaginator.(Async)GetPage
вы видите, проверка кода, чтобы увидеть, находится ли страница, запрошенная для печати, в индексе доступных страниц;или, может быть, если в Dictionary
имеется ключ, значение которого DocumentPage
для печати.
Другими словами, и причина, по которой для PrintDialog
по умолчанию установлено UserPageRangeEnabled
, установлено false
,потому что для того, чтобы использовать эту функцию, вам обычно нужно написать собственный DocumentPaginator
или добавить некоторую логику для компиляции нового временного документа, содержащего только те страницы, которые вы хотите распечатать.
Не стесняйтесь задавать любые вопросы.