Mega Code Archive

 
Categories / C# / WPF
 

Change FlowDocument Width and Height

<Window x:Class="WpfApplication1.Window1"     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     Title="FlowDocument Optimal Paragraph Sample">   <StackPanel>         <CheckBox Click="ToggleHyphenation" Content="Automatic Hyphenation"/>         <CheckBox Click="ToggleOptimalParagraph" Content="  Enable Optimal Paragraph Layout"/>         <CheckBox Click="ToggleColumnFlex" Content="Enable Flexible Columns"/>         <Slider Name="columnWidthSlider" ValueChanged="ChangeColumnWidth"/>         <Slider Name="columnGapSlider" ValueChanged="ChangeColumnGap"/>     <FlowDocumentReader Name="flowReader">       <FlowDocument Name="flowDoc"        TextAlignment="Justify"          IsOptimalParagraphEnabled="True"  IsHyphenationEnabled="True"         IsColumnWidthFlexible="True"      Background="AliceBlue"         ColumnWidth="300"                 ColumnGap="20">         <Paragraph><Italic>this is a test</Italic></Paragraph>         <Paragraph>           <Hyperlink NavigateUri="http://www-cs-faculty.stanford.edu/~knuth/">             - Donald E. Knuth           </Hyperlink>         </Paragraph>         <Paragraph><Bold>Principle of Optimal Paragraph</Bold></Paragraph>         <Paragraph>this is a test <Italic>italic</Italic> </Paragraph>         <Paragraph>this is a test</Paragraph>         <Paragraph>this is a test</Paragraph>         <Paragraph>this is a test</Paragraph>       </FlowDocument>     </FlowDocumentReader>   </StackPanel> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Media; using System.Windows.Shapes; namespace WpfApplication1 {     public partial class Window1 : Window     {         void ToggleHyphenation(Object sender, RoutedEventArgs args)         {             flowDoc.IsHyphenationEnabled = ((CheckBox)sender).IsChecked.Value;         }         void ToggleOptimalParagraph(Object sender, RoutedEventArgs args)         {             flowDoc.IsOptimalParagraphEnabled = ((CheckBox)sender).IsChecked.Value;                     }         void ToggleColumnFlex(Object sender, RoutedEventArgs args)         {             flowDoc.IsColumnWidthFlexible = ((CheckBox)sender).IsChecked.Value;         }         void ChangeColumnWidth(Object sender, RoutedEventArgs args)         {                 if (columnWidthSlider.Value == 0)                  {                     flowDoc.ColumnWidth = 100;                 }                 else if (columnWidthSlider.Value == 1)                 {                     flowDoc.ColumnWidth = 200;                 }                 else if (columnWidthSlider.Value == 2)                 {                     flowDoc.ColumnWidth = 300;                 }                 else if (columnWidthSlider.Value == 3)                 {                      flowDoc.ColumnWidth = 400;                  }                 else if (columnWidthSlider.Value == 4)                 {                      flowDoc.ColumnWidth = 500;                  }         }         void ChangeColumnGap(Object sender, RoutedEventArgs args)         {                       if (columnGapSlider.Value == 0)                 {                     flowDoc.ColumnGap = 5;                 }                 else if (columnGapSlider.Value == 1)                 {                     flowDoc.ColumnGap = 10;                 }                 else if (columnGapSlider.Value == 2)                 {                     flowDoc.ColumnGap = 15;                 }                 else if (columnGapSlider.Value == 3)                 {                     flowDoc.ColumnGap = 20;                 }                 else if (columnGapSlider.Value == 4)                 {                     flowDoc.ColumnGap = 25;                 }         }     } }