Condividi tramite


Procedura: regolare la spaziatura tra paragrafi

In questo esempio viene illustrato come regolare o eliminare la spaziatura tra paragrafi nel contenuto in flusso.

Nel contenuto in flusso, lo spazio aggiuntivo che si trova tra i paragrafi è il risultato dei margini impostati per tali paragrafi. Quindi la spaziatura tra paragrafi può essere controllata regolando i margini degli stessi paragrafi. Per eliminare completamente la spaziatura aggiuntiva tra due paragrafi, impostare i margini dei paragrafi su 0. Per ottenere una spaziatura uniforme tra i paragrafi di un intero FlowDocument, applicare uno stile per impostare un valore di margine uniforme per tutti i paragrafi di FlowDocument.

È importante notare che i margini di due paragrafi adiacenti saranno "compressi" nel margine più grande anziché raddoppiati. Quindi, se due paragrafi adiacenti hanno rispettivamente margini di 20 e 40 pixel, la spaziatura risultante tra i paragrafi è di 40 pixel, il più grande dei valori dei due margini.

Esempio

Nell'esempio riportato di seguito viene applicato lo stile per impostare il margine di tutti gli elementi Paragraph di FlowDocument su 0, eliminando effettivamente la spaziatura aggiuntiva tra i paragrafi di FlowDocument.

<FlowDocument>
  <FlowDocument.Resources>
    <!-- This style is used to set the margins for all paragraphs in the FlowDocument to 0. -->
    <Style TargetType="{x:Type Paragraph}">
      <Setter Property="Margin" Value="0"/>
    </Style>
  </FlowDocument.Resources>

  <Paragraph>
    Spacing between paragraphs is caused by margins set on the paragraphs.  Two adjacent margins
    will "collapse" to the larger of the two margin widths, rather than doubling up.
  </Paragraph>

  <Paragraph>
    To eliminate extra spacing between two paragraphs, just set the paragraph margins to 0.
  </Paragraph>
</FlowDocument>