Version

PrintPreview(UltraGridLayout,PrintDocument) Method

Initiates the creation of a preview of what a printed report of the grid data would look like.
Syntax
'Declaration
 
Public Overloads Sub PrintPreview( _
   ByVal layout As UltraGridLayout, _
   ByVal printDocument As PrintDocument _
) 
public void PrintPreview( 
   UltraGridLayout layout,
   PrintDocument printDocument
)

Parameters

layout
Optional layout object
printDocument
Optional print document
Remarks

The PrintPreview method initiates a print preview. Invoking this method triggers the process of preparing a printed report based on the data in the grid and displaying the results in a print preview window. This process has several steps and involves interaction between print-preview-specific objects and events within the control.

When you invoke this method, you specify a Layout object that controls the formatting of how the grid data will look when printed, and also while being previewed. The Layout object gives you the opportunity to create a custom-formated report based on the data in teh grid, applying different attributes such as fonts, colors and arrangement of data specifically for the printed page.

When the print preview begins, the InitializePrintPreview event occurs. This event receives a PrintDocument object that contains information about the print job being previewed. You examine and change the properties of this object to provide feedback for the user and control the look of the printed output. Any settings you have applied to the PrintDocument object specified as a paramter of the PrintPreview method will be passed along to the PrintDocument that appears in the InitializePrintPreview method.

Example
Following code shows how to print the UltraGrid and makes use of BeforePrint event to show a confirmation dialog before proceeding with printing the UltraGrid.

For an overview of how to handle events in Visual Basic or Visual C#, see Event Handlers in Visual Basic and Visual C#. For specific information and code examples illustrating how to consume events in your application, see Consuming Events in the .NET Framework Developer's Guide.

Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
Imports System.Drawing.Printing

  Private Sub Button16_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button16.Click

      ' Following code shows a print preview dialog and then prints the UltraGrid.

      Try
          ' Optinally show the print preview dialog.
          Me.ultraGrid1.PrintPreview()

          ' Calling print causes the UltraGrid to send the print job to the printer.
          Me.ultraGrid1.Print()
      Catch exc As Exception
          ' Catch any exceptions that may get thrown and let the user know.
          MessageBox.Show("Error occured while printing." & vbCrLf & exc.Message, "Error printing", _
                                      MessageBoxButtons.OK, MessageBoxIcon.Error)
      End Try

  End Sub

  Private Sub UltraGrid1_BeforePrint(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.CancelablePrintEventArgs) Handles ultraGrid1.BeforePrint

      ' Following code shows a message box giving the user a last chance to cancel printing the 
      ' UltraGrid.
      Dim result As DialogResult = MessageBox.Show("Proceed with printing ?", "Confirm", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
      If DialogResult.Cancel = result Then e.Cancel = True

  End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;
   using System.Drawing.Printing;

private void button16_Click(object sender, System.EventArgs e)
{	

	// Following code shows a print preview dialog and then prints the UltraGrid.

	try
	{
		// Optinally show the print preview dialog.
		this.ultraGrid1.PrintPreview( );

		// Calling print causes the UltraGrid to send the print job to the printer.
		this.ultraGrid1.Print( );			
	}
	catch ( Exception exc )
	{
		// Catch any exceptions that may get thrown and let the user know.
              
		MessageBox.Show( "Error occured while printing.\n" + exc.Message, "Error printing", 
			MessageBoxButtons.OK, MessageBoxIcon.Error );
	}

}
		
private void ultraGrid1_BeforePrint(object sender, Infragistics.Win.UltraWinGrid.CancelablePrintEventArgs e)
{

	// Following code shows a message box giving the user a last chance to cancel printing the 
	// UltraGrid.

	DialogResult result = MessageBox.Show( "Proceed with printing ?", "Confirm", 
		MessageBoxButtons.OKCancel, MessageBoxIcon.Question );
	
	if ( DialogResult.Cancel == result )
		e.Cancel = true;

}
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also