FlowDocument.PageWidth Property

Definition

Gets or sets the preferred width for pages in a FlowDocument.

public:
 property double PageWidth { double get(); void set(double value); };
[System.ComponentModel.TypeConverter(typeof(System.Windows.LengthConverter))]
public double PageWidth { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Windows.LengthConverter))>]
member this.PageWidth : double with get, set
Public Property PageWidth As Double

Property Value

The preferred width, in device independent pixels, for pages in the FlowDocument. A value of NaN (equivalent to an attribute value of "Auto") causes the page width to be determined automatically. The default is NaN.

Attributes

Examples

The following example shows how to set the PageWidth attribute of a FlowDocument element.

<FlowDocumentReader>
  <FlowDocument
    PageHeight="Auto"
    PageWidth="Auto"
    MinPageHeight="3in"
    MinPageWidth="5in"
    MaxPageHeight="6in"
    MaxPageWidth="10in"
  >
    <Paragraph Background="BlanchedAlmond">
      This uses automatic page sizing with minimum page size of 3 by 5 inches,
      and a maximum page size of 6 by 10 inches.
    </Paragraph>
  </FlowDocument>
</FlowDocumentReader>

The following example shows how to set the PageWidth property programmatically.

FlowDocument flowDoc = new FlowDocument(new Paragraph(new Run("A bit of text content...")));
// Set PageHeight and PageWidth to "Auto".
flowDoc.PageHeight = Double.NaN;
flowDoc.PageWidth = Double.NaN;
// Specify minimum page sizes.
flowDoc.MinPageWidth = 680.0;
flowDoc.MinPageHeight = 480.0;
//Specify maximum page sizes.
flowDoc.MaxPageWidth = 1024.0;
flowDoc.MaxPageHeight = 768.0;
Dim flowDoc As New FlowDocument(New Paragraph(New Run("A bit of text content...")))
' Set PageHeight and PageWidth to "Auto".
flowDoc.PageHeight = Double.NaN
flowDoc.PageWidth = Double.NaN
' Specify minimum page sizes.
flowDoc.MinPageWidth = 680.0
flowDoc.MinPageHeight = 480.0
'Specify maximum page sizes.
flowDoc.MaxPageWidth = 1024.0
flowDoc.MaxPageHeight = 768.0

Remarks

If viewed on a continuum, the MinPageWidth property takes precedence over the MaxPageWidth property, which in turn takes precedence over the PageWidth property. If all three properties are set on a given page, this is the order in which the properties are evaluated.

XAML Attribute Usage

<object PageWidth="double"/>  
- or -  
<object PageWidth="qualifiedDouble"/>  
- or -  
<object PageWidth="Auto"/>  

XAML Values

double
Double

String representation of a Double value equal to or greater than 0.0 but smaller than Double.PositiveInfinity. An unqualified value is measured in device independent pixels. Strings need not explicitly include decimal points.

qualifiedDouble
A double value as described above, followed by one of the following unit specifiers: px, in, cm, pt.

px (default) is device-independent units (1/96th inch per unit)

in is inches; 1in==96px

cm is centimeters; 1cm==(96/2.54) px

pt is points; 1pt==(96/72) px

Auto
Causes the page width to be determined automatically. Equivalent to a property value of Double.NaN.

Dependency Property Information

Identifier field PageWidthProperty
Metadata properties set to true AffectsMeasure

Applies to