Programmatically Create and Save a FlowDocument : FlowDocument « Windows Presentation Foundation « VB.Net

Home
VB.Net
1.2D
2.Application
3.Class
4.Data Structure
5.Data Types
6.Database ADO.net
7.Date Time
8.Development
9.Event
10.File Directory
11.Generics
12.GUI
13.Internationalization I18N
14.Language Basics
15.LINQ
16.Network Remote
17.Reflection
18.Security
19.Thread
20.Windows Presentation Foundation
21.Windows System
22.XML
23.XML LINQ
VB.Net » Windows Presentation Foundation » FlowDocument 




Programmatically Create and Save a FlowDocument
Programmatically Create and Save a FlowDocument
    

<Window 
  x:Class="WpfApplication1.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="Window1" Height="300" Width="300" Loaded="Window_Loaded">
  <DockPanel>
    <Button DockPanel.Dock="Bottom" Content="Save..." Click="btnSave_Click"/>
    <FlowDocumentReader x:Name="fdrViewer" />
  </DockPanel>
</Window>

//File:Window.xaml.vb

Imports System
Imports System.IO
Imports System.Windows
Imports System.Windows.Documents
Imports System.Windows.Markup
Imports System.Windows.Media
Imports System.Windows.Shapes
Imports System.Xml
Imports Microsoft.Win32

Namespace WpfApplication1
  Public Partial Class Window1
    Inherits Window
    Public Sub New()
      InitializeComponent()
    End Sub
    Private Sub btnSave_Click(sender As Object, e As RoutedEventArgs)

      SaveFile("c:\", fdrViewer.Document)
    End Sub
    Private Sub SaveFile(fileName As String, documentSource As IDocumentPaginatorSource)
      Dim xmlWriter As XmlTextWriter = Nothing
      Dim writer As TextWriter = Nothing
      Dim file__1 As Stream = Nothing

      Try
        file__1 = File.Create(fileName)
        writer = New StreamWriter(file__1)

        xmlWriter = New XmlTextWriter(writer)

        Dim xamlManager As New XamlDesignerSerializationManager(xmlWriter)

        XamlWriter.Save(documentSource.DocumentPaginator.Source, xamlManager)
      Catch e As Exception
        Dim msg As String = String.Format("Error occurred during saving.{0}{0}{1}", Environment.NewLine, e.Message)

        MessageBox.Show(msg, "Error", MessageBoxButton.OK, MessageBoxImage.[Error])
      End Try
    End Sub

    Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs)
      Dim flowDocument As New FlowDocument()
      Dim paragraph As New Paragraph()
      paragraph.Inlines.Add("This is a paragraph.")
      flowDocument.Blocks.Add(paragraph)

      flowDocument.Blocks.Add(paragraph)

      fdrViewer.Document = flowDocument
    End Sub
  End Class
End Namespace

   
    
    
    
  














Related examples in the same category
1.Add Paragraph to a FlowDocumentAdd Paragraph to a FlowDocument
2.Add Figure into a ParagraphAdd Figure into a Paragraph
3.FlowDocument with a ParagraphFlowDocument with a Paragraph
4.Paragraph elements and FlowDocumentPageViewerParagraph elements and FlowDocumentPageViewer
5.List with ListItems in a FlowDocumentList with ListItems in a FlowDocument
6.Put Paragraph to a ListItemPut Paragraph to a ListItem
7.Table in a FloaterTable in a Floater
8.Set font size for FlowDocumentSet font size for FlowDocument
9.Preserve space in FlowDocumentPreserve space in FlowDocument
10.TableCell and TableRow and TableRowGroupTableCell and TableRow and TableRowGroup
11.Put List to FlowDocumentPut List to FlowDocument
12.Use Table to display tabular data.Use Table to display tabular data.
13.Hyperlink Element
14.Paged ContentPaged Content
15.Text JustificationText Justification
16.Add Bold line to ParagraphAdd Bold line to Paragraph
17.A Paragraph inside a FloaterA Paragraph inside a Floater
18.Add Run of text to a ParagraphAdd Run of text to a Paragraph
19.Set HorizontalAnchor, VerticalAnchor, Background for FigureSet HorizontalAnchor, VerticalAnchor, Background for Figure
20.Nested listsNested lists
21.FontWeight of ParagraphFontWeight of Paragraph
22.BlockUIContainer with a Button along with ParagraphBlockUIContainer with a Button along with Paragraph
23.List MarkerStyleList MarkerStyle
24.Explicit table columnsExplicit table columns
25.Specifying figure widths in columns unitsSpecifying figure widths in columns units
26.Programmatically change the FlowDirection of content within a FlowDocumentReader elementProgrammatically change the FlowDirection of content within a FlowDocumentReader element
27.Use FlowDocumentReader to display FlowDocumentUse FlowDocumentReader to display FlowDocument
28.Use XamlDesignerSerializationManager to write FlowDocumentUse XamlDesignerSerializationManager to write FlowDocument
29.Show FlowDocumentShow FlowDocument
30.Table Flow ContentTable Flow Content
31.Change FlowDocument Width and HeightChange FlowDocument Width and Height
32.Clear FlowDocumentReaderClear FlowDocumentReader
33.Programmatically add rows to a Table element.Programmatically add rows to a Table element.
34.Toggle Hyphenation, Optimal Paragraph, and Column FlexToggle Hyphenation, Optimal Paragraph, and Column Flex
35.Use basic typographic properties.Use basic typographic properties.
36.Annotation ServiceAnnotation Service
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.