Mega Code Archive

 
Categories / VB.Net / 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.vb Imports System Imports System.Windows Imports System.Windows.Controls Imports System.Windows.Data Imports System.Windows.Documents Imports System.Windows.Media Imports System.Windows.Shapes Namespace WpfApplication1   Public Partial Class Window1     Inherits Window     Private Sub ToggleHyphenation(sender As [Object], args As RoutedEventArgs)       flowDoc.IsHyphenationEnabled = DirectCast(sender, CheckBox).IsChecked.Value     End Sub     Private Sub ToggleOptimalParagraph(sender As [Object], args As RoutedEventArgs)       flowDoc.IsOptimalParagraphEnabled = DirectCast(sender, CheckBox).IsChecked.Value     End Sub     Private Sub ToggleColumnFlex(sender As [Object], args As RoutedEventArgs)       flowDoc.IsColumnWidthFlexible = DirectCast(sender, CheckBox).IsChecked.Value     End Sub     Private Sub ChangeColumnWidth(sender As [Object], args As RoutedEventArgs)       If columnWidthSlider.Value = 0 Then         flowDoc.ColumnWidth = 100       ElseIf columnWidthSlider.Value = 1 Then         flowDoc.ColumnWidth = 200       ElseIf columnWidthSlider.Value = 2 Then         flowDoc.ColumnWidth = 300       ElseIf columnWidthSlider.Value = 3 Then         flowDoc.ColumnWidth = 400       ElseIf columnWidthSlider.Value = 4 Then         flowDoc.ColumnWidth = 500       End If     End Sub     Private Sub ChangeColumnGap(sender As [Object], args As RoutedEventArgs)       If columnGapSlider.Value = 0 Then         flowDoc.ColumnGap = 5       ElseIf columnGapSlider.Value = 1 Then         flowDoc.ColumnGap = 10       ElseIf columnGapSlider.Value = 2 Then         flowDoc.ColumnGap = 15       ElseIf columnGapSlider.Value = 3 Then         flowDoc.ColumnGap = 20       ElseIf columnGapSlider.Value = 4 Then         flowDoc.ColumnGap = 25       End If     End Sub   End Class End Namespace