PrintAdapters Readme
30-Mar-2007
PrintAdapters
Windows Control Printing Components (TRIAL Version) 2.1.0.4.
PrintAdapters is a set of easy to use adapter classes to facilitate the
printing of TreeView, ListView and RichTextBox controls directly from your .NET
application. PrintAdapters also provides an adapter for printing DataTable
contents with the same styling options as the ListView adapter.
New Features in Version 2.1.0.4
- Fix: Updated licensing code for Vista compatability.
New Features in Version 2.1.0.3
- Fix: PrintTreeView now honors custom node ForeColor in print.
New Features in Version 2.1.0.2
- Fix: All PrintAdapters - fix incorrect adapter OnBeginPrint reset logic on subsequent print runs.
New Features in Version 2.1.0.1
- Fix: PrintListView fix partial printing of column headers at foot of page when there isn't enough room for any actual data rows.
- Fix: PrintListView fix null ref in CreateTableStyleFromListView due to uninitalised renderer.
- Fix: PrintRichTextBox correctly restore Graphics.Clip after print.
- Fix: Includes TMGDevelopment.Shared.dll 1.0.0.4 fix: accounting for PrintChainManager.Gap value in remaining space on page.
- Fix: Includes TMGDevelopment.Shared.dll 1.0.0.4 fix: first PrintChainManager.DocumentChanged event no longer raised from PrintChainManager.OnBeginPrint, happens during PrintChainManager.OnPrintPage only now.
New Features in Version 2.1.0.0
- Enh: Unified namespaces across PrintAdapters, PrintForm and PrintControls.
- Enh: PrintChaining renamed to TMGDevelopment.Shared and more common classes added.
- Enh: FxCop etc rules applied.
- Fix: VS2005 compatability.
New Features in Version 2.0.1.3
- Fix: PrintListView RowStyle applied to wrong row on subsequent pages
- Fix: PrintListView wrong CellStyle.TextAlignment used on printing first column
New Features in Version 2.0.1.2
- Fix: Correct problem that prevented specifying custom Column widths
in TableStyle
- New: Add Measure() fn to PrintListView
returning full x,y table dimensions
- New: Add Measure() fn to PrintDataTable
returning full x,y table dimensions
- Fix: Correction to PrintlistView.Draw() to use correct margin
size internally
New Features in Version 2.0.1.0
- New: PrintListView grid printing
support, mirroring gridline settings of ListView control
- New: TableStyle CellStyle TextAlign
property
- New: TableStyle CellStyle StringTrimming property
New Features in Version 2.0.0.0
- New: Complete Help file documentation
of PrintAdapters and Printing namespaces
- New: Help file PrintAdapters technical howto covering TableStyles
- New: Samples (see 'Getting Started' below for details) SimpleTree, SimpleListView, SimpleDataTable, SimpleRichTextBox, AdvancedTree, AdvancedListView, AdvancedRichTextBox, ListViewStyleCodeSamples. Sample application CustomerQuote - showing how to chain the output of various PrintAdapters together using PrintChainManager
- New: PrintDataTable now also prints DataViews
- Fix: PrintListView; checkboxes not moved with column if columns reordered
- Fix: PrintListView; column order check failed when no columns defined
- New: PrintListView now prints columns in the correct order if the user has reordered them
- Enh: Added null value checking to the parameters passed to RowStyle, TableStyle
- Fix: PrintListView now only refreshes TableStyle from the ListView (if appropriate) when the TableStyle is requested, not at creation time, which was overrwriting custom settings in some scenarios
- New: Added BorderStyle static methods BorderNone & BorderSingle to supply common borders
- Enh: Made TableStyle.ColumnHeaderDefault visible, and serializable, and renamed it to ColumnDefault
- New: Added ResetTableStyle etc to PrintListView for designer support
- Fix: Commented out obsolete TableStyle ctors
- Enh: PrintChainManager and IPrintChaining moved to PrintChaining.dll and shared between PrintAdapters and PrintForm
Feature Overview
All adapters integrate with the Visual Studio .NET design environment and the .NET printing architecture. This means that you can design the style of your printed output in the VS.NET designer, without any coding, and then print or print preview using the standard .NET PrintPreviewDialog classes.
PrintListView and PrintDataTable:
- Custom print styles can be designed in VS.NET or modified programmatically at runtime. Alternatively PrintListView can automatically create a set of style settings which accurately mirror the current settings of the ListView.
- Pre-defined styles can be applied to the printed output via the VS.NET designer.
- The controls are derived from PrintDocument, so you can use it in place of PrintDocument in the .NET framework to simply print out a ListView across multiple pages.
- Custom printouts are supported. The Draw method allows you to specify the available rectangular space - and the control will render as many of the rows of data as it can into that space. Calling Draw again for subsequent pages will continue rendering until all rows have been printed.
PrintTreeView:
- The starting node(s) to be printed can be set by the user or automatically detected (PrintTreeView.AutoDetectRootNodes property). Starting/root nodes can be manually specifed via the PrintTreeView.RootNodesproperty.
- The Tree can be printed fully expanded or in its current state of expansion at the time of printout by setting the PrintTreeView.PrintTreeExpandedproperty.
- PrintTreeView is derived from PrintDocument, so you can use it in place of PrintDocument in the .NET framework to simply print out a tree across multiple pages.
- Custom printouts are supported. PrintTreeView's PrintTree method allows you to specify the available rectangular space - and PrintTreeView will render as many of the TreeView's nodes as it can into that space. Calling PrintTree again for subsequent pages will continue rendering the tree until all nodes have been printed.
PrintRichTextBox:
- PrintRichTextBox is derived from PrintDocument, so you can use it in place of PrintDocument in the .NET framework to simply print out a RichTextBox across multiple pages.
- Custom printouts are supported. PrintRichTextBox's Draw method allows you to specify the available rectangular space - and PrintRichTextBox will render as much of the RichTextBox's contents as it can into that space. Calling Draw again for subsequent pages will continue rendering the RichTextBox until all the contents have been printed.
Installation Instructions
You must be logged in as an Administrator when you install PrintAdapters.NET. To begin the installation process, run the setup.exe program included with your installation files. After the installation process has completed you will need to add the PrintAdapters components to your Toolbox in Visual Studio.NET using the following procedure:
1. Open the Visual Studio .NET editor.
2. Right click on the 'General' tab of the Toolbox, and select 'Customise Toolbox...'. (You may alternatively add it to the Windows Forms tab, or create a new tab).
3. Select the '.NET Framework Components' tab of the Customise Toolbox Dialog and scroll down until you find 'Barcode' with a namespace of TMGDevelopment.Windows.Forms. Check this, highlight the row and click the namespace column header to sort by namespace. Check all the other controls in the TMGDevelopment.Windows.Forms namespace and click OK.
You should now be able to drag any PrintAdapters component from the General Tab of the Toolbox onto your Form.
Getting Started
PrintAdapters includes a number of sample applications, but probably
the best place to get started is with the Getting Started document in the help file, and
the accompanying GettingStarted project installed under the PrintAdapters entry on your
Start menu.
If you have any problems using PrintAdapters, please contact us
via our website at http://www.winformreports.co.uk/contactus.asp
PrintAdapters.NET © 2004-2006 TMG Development Ltd