Объект FlowDocument поддерживает функции, которые вы ищете в свойствах PageWidth, PagePadding. Свойство ColumnWidth не влияет на ширину страницы, скорее оно предлагает или может принудительно определять расположение столбцов в пределах ширины страницы.
PageWidth : это, как показано, ширина страницы документа. Количество устанавливается в независимых от устройства пикселях (пиксель составляет 1/96 дюйма, поэтому 1 ”= 96 пикселей). При установке этого значения помните, что поле страницы также должно учитываться.
PagePadding : это имя, гораздо более подходящее для WPF, чем для полей документа, фактически является полем страницы. Количество пикселей (1/96 дюйма) между краем бумаги и содержимым. Таким образом, в общем случае PagePadding + PageWidth должны быть равны или, по крайней мере, не превышать ширину бумаги. Если у вас бумага шириной 8,5 дюйма (816 пикселей) и у вас 1/2 поля (48 пикселей * 2 = 96), то у вас есть только 720 пикселей для воспроизведения для PageWidth. PagePadding имеет тип Толщина, так что вы можете установить единообразное значение, которое применяется ко всем полям, или установить каждое отдельно при желании.
ColumnWidth : Этот параметр не связан с размером контейнера, а с тем, как размещается содержимое в контейнере. Как видно из названия, он устанавливает желаемую ширину столбцов документа. Это только требуемый , так как по умолчанию макет будет корректировать ColumnWidth, чтобы наилучшим образом использовать доступную ширину страницы. Чтобы обеспечить настройку ширины столбца, необходимо установить IsColumnWidthF Flexible = False.