GrapeCity MultiRow Windows Forms Documentation
PrintSettings Class
Members  Example 


Represents the printing settings.
Syntax
<TypeConverterAttribute("System.ComponentModel.ExpandableObjectConverter, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")>
<SerializableAttribute()>
Public Class PrintSettings 
Dim instance As PrintSettings
[TypeConverter("System.ComponentModel.ExpandableObjectConverter, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")]
[Serializable()]
public class PrintSettings 
Remarks

You can print the GcMultiRow control in a graphic. You can also customize the print settings. Set the PagingMode property to a different value if you want to use a different paging style. Use the PrintRange property with MultiRowPrintRange.SomeRows to print certain rows. You can also select a row's range using FromRow and ToRow. Use the SectionMargin property if you need to set margins between two rows. The ColumnMargin can be used to specify the margin between two columns when PagingMode is set to PagingMode.MultiColumns.

You can determine how to print the ColumnHeaderSection and the ColumnFooterSection in each page with the PrintHeader or PrintFooter property.

You can use the AutoFitWidth to control whether to automatically fit the template's width to the page's width when the Template's width is less than or greater than the page's width. Use the ZoomFactor property to print the GcMultiRow control to the page with a zoom ratio.

The settings are used by GcMultiRow.Print, GcMultiRow.Print, GcMultiRow.PrintPreview, GcMultiRow.PrintPreview, and GcMultiRow.Document.

Example
The following code example shows how to use the PrintStyle.Rich style and the PagingMode.Flow option to print the GcMultiRow control. This example is part of a larger example available for the GcMultiRow.PrintSettings class.
void setRichAndFlowButton_Click(object sender, EventArgs e)
        {
            Template template1 = CreateTemplate(3, 21);
            AddPrintInfoCellColumnFooterSection(template1, 21);
            this.gcMultiRow1.Template = template1;
            gcMultiRow1.RowCount = 50;

            //All UI elements are printed, like UpDown button.
            gcMultiRow1.PrintSettings.PrintStyle = PrintStyle.Rich;
            //All rows are printed from the first page to the last page, one by one.
            gcMultiRow1.PrintSettings.PagingMode = PagingMode.Flow;
            //The GcMultiRow is aligned by MiddleLeft.
            gcMultiRow1.PrintSettings.Alignment = MultiRowContentAlignment.MiddleLeft;
            //Between every two Rows, there is a 15 pixel space.
            gcMultiRow1.PrintSettings.SectionMargin = 15;
            //Only the Row from 2th to 8th are printed
            gcMultiRow1.PrintSettings.PrintRange = MultiRowPrintRange.SomeRows;
            gcMultiRow1.PrintSettings.FromRow = 2;
            gcMultiRow1.PrintSettings.ToRow = 8;

            if (flag)
            {
                //The Template's width is less than page's width, set AutoFitWidth to true, the Template is zoomed out to fit the page's width.
                gcMultiRow1.PrintSettings.AutoFitWidth = true;
                flag = false;
            }
            else
            {
                gcMultiRow1.PrintSettings.AutoFitWidth = false;
                flag = true;
            }
            gcMultiRow1.PrintSettings.ZoomFactor = 1f;
            try
            {
                gcMultiRow1.PrintPreview();
                //If you have a printer, you can execute the following code directly.
                //gcMultiRow1.Print(true);
            }
            catch (Exception ex)
            {
                // Can't find printer driver.
                MessageBox.Show(ex.Message);
            }
            label.Text = "In Rich style, all elements will be printed, like UpDown button; Between two rows, 15 pixels space existed; Only  the 2th to 8th row are printed one by one from page's Top to Bottom; The GcMultiRow will be aligned by MiddleLeft; (Click the button again to view the AutoFitWidth property's effect)";
        }
Private Sub setRichAndFlowButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles setRichAndFlowButton.Click
        Dim template1 As Template = CreateTemplate(3, 21)
        AddPrintInfoCellColumnFooterSection(template1, 21)
        Me.gcMultiRow1.Template = template1
        gcMultiRow1.RowCount = 50

        'All UI elements are printed, like UpDown button.
        gcMultiRow1.PrintSettings.PrintStyle = PrintStyle.Rich
        'All rows are printed from the first page to the last page, one by one.
        gcMultiRow1.PrintSettings.PagingMode = PagingMode.Flow
        'The GcMultiRow is aligned by MiddleLeft.
        gcMultiRow1.PrintSettings.Alignment = MultiRowContentAlignment.MiddleLeft
        'Between every two Rows, there is a 15 pixel space.
        gcMultiRow1.PrintSettings.SectionMargin = 15
        'Only the Row from 2th to 8th are printed
        gcMultiRow1.PrintSettings.PrintRange = MultiRowPrintRange.SomeRows
        gcMultiRow1.PrintSettings.FromRow = 2
        gcMultiRow1.PrintSettings.ToRow = 8

        If flag Then
            'The Template's width is less than page's width, set AutoFitWidth to true, the Template is zoomed out to fit the page's width.
            gcMultiRow1.PrintSettings.AutoFitWidth = True
            flag = False
        Else
            gcMultiRow1.PrintSettings.AutoFitWidth = False
            flag = True
        End If
        gcMultiRow1.PrintSettings.ZoomFactor = 1.0F
        Try
            'If you have a printer, you can execute the following code directly.
            'gcMultiRow1.Print(true);
            gcMultiRow1.PrintPreview()
        Catch ex As Exception
            ' Can't find printer driver.
            MessageBox.Show(ex.Message)
        End Try
        label.Text = "In Rich style, all elements will be printed, like UpDown button; Between two rows, 15 pixels space existed; Only  the 2th to 8th row are printed one by one from page's Top to Bottom; The GcMultiRow will be aligned by MiddleLeft; (Click the button again to view the AutoFitWidth property's effect)"
    End Sub
Inheritance Hierarchy

System.Object
   GrapeCity.Win.MultiRow.PrintSettings

Requirements

Target Platforms: 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

Reference

PrintSettings Members
GrapeCity.Win.MultiRow Namespace
Print Method
PrintPreview Method
PageSetup Method
Document Property

 

 


Copyright © GrapeCity, inc. All rights reserved.