c# pdf viewer itextsharp : Reorder pages of pdf Library control class asp.net web page wpf ajax winforms.reportdesigner18-part1628

175 
f.LineWidth = 50; 
f.BorderColor = Color.FromArgb(100, 100, 100); 
This code illustrates a powerful technique for handling fonts. Since every field inherits the control font 
when it is created, set the control's Font.Bold property to True before creating the fields, and set it back to 
False afterwards. As a result, all controls in the Page Header section have a bold font. 
8.
To finalize the report, add the Detail Section. This is the section that shows the actual data. It has one 
calculated field below each label in the Page Header Section. To create the Detail section, add the 
following code: 
Visual Basic 
' create the Detail section 
With c1r.Sections(SectionTypeEnum.Detail) 
.Height = 330 
.Visible = True 
f = .Fields.Add("FldID", "EmployeeID", 0, 0, 400, 300) 
f.Calculated = True 
f = .Fields.Add("FldFirstName", "FirstName", 500, 0, 900, 300) 
f.Calculated = True 
f = .Fields.Add("FldLastName", "LastName", 1500, 0, 900, 300) 
f.Calculated = True 
f = .Fields.Add("FldTitle", "Title", 2500, 0, 2400, 300) 
f.Calculated = True 
f = .Fields.Add("FldNotes", "Notes", 5000, 0, 8000, 300) 
f.Width = c1r.Layout.Width - f.Left 
f.Calculated = True 
f.CanGrow = True 
f.Font.Size = 6 
f.Align = FieldAlignEnum.JustTop 
f = .Fields.Add("FldLine", "", 0, 310, c1r.Layout.Width, 20) 
f.LineSlant = LineSlantEnum.NoSlant 
f.BorderStyle = BorderStyleEnum.Solid 
f.BorderColor = Color.FromArgb(100, 100, 100) 
End With 
C# 
// create the Detail section 
s = c1r.Sections[SectionTypeEnum.Detail]; 
s.Height = 330; 
s.Visible = true; 
f = s.Fields.Add("FldID", "EmployeeID", 0, 0, 400, 300); 
f.Calculated = true; 
f = s.Fields.Add("FldFirstName", "FirstName", 500, 0, 900, 300); 
f.Calculated = true; 
f = s.Fields.Add("FldLastName", "LastName", 1500, 0, 900, 300); 
f.Calculated = true; 
f = s.Fields.Add("FldTitle", "Title", 2500, 0, 2400, 300); 
f.Calculated = true; 
f = s.Fields.Add("FldNotes", "Notes", 5000, 0, 8000, 300); 
f.Width = c1r.Layout.Width - f.Left; 
f.Calculated = true; 
f.CanGrow = true; 
f.Font.Size = 6; 
f.Align = FieldAlignEnum.JustTop; 
f = s.Fields.Add("FldLine", "", 0, 310, c1r.Layout.Width, 20); 
f.LineSlant = LineSlantEnum.NoSlant; 
f.BorderStyle = BorderStyleEnum.Solid; 
Reorder pages of pdf - re-order PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Customizing Page Order of PDF Document in C# Project
rearrange pages in pdf online; reorder pdf pages reader
Reorder pages of pdf - VB.NET PDF Page Move Library: re-order PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sort PDF Document Pages Using VB.NET Demo Code
pdf move pages; change pdf page order preview
176  
f.BorderColor = Color.FromArgb(100, 100, 100); 
Note that all fields are calculated, and their Text property corresponds to the names of fields in the source 
recordsetsource. Setting the Calculated property to True ensures that the Text property is interpreted as a 
database field name, as opposed to being rendered literally. It is important to adopt a naming convention 
for report fields that makes them unique, different from recordset field names. If you had two fields named 
"LastName", an expression such as "Left(LastName,1)" would be ambiguous. This example has adopted 
the convention of beginning all report field names with "Fld". 
Note also that the "FldNotes" field has its CanGrow property set to True, and a smaller font than the 
others. This was done to make sure that the "Notes" field in the database, which contains a lot of text, will 
appear in the report. Rather than make the field very tall and waste space, setting the CanGrow property 
to True tells the control to expand the field as needed to fit its contents; it also sets the containing section's 
CanGrow property to True, so the field doesn't spill off the Section. 
9.
The report definition is done. To render the report into the C1PrintPreview control, double-click the 
Employees button to add an event handler for the btnEmployees_Click event. The Code Editor will open 
with the insertion point placed within the event handler. Enter the following code: 
Visual Basic 
RenderEmployees() 
' render the report into the C1PrintPreview control 
ppv.Document = c1r.Document 
C# 
RenderEmployees(); 
// render the report into the C1PrintPreview control 
ppv.Document = c1r.Document; 
Here's what the basic report looks like: 
C# TIFF: How to Reorder, Rearrange & Sort TIFF Pages Using C# Code
Reorder, Rearrange and Sort TIFF Document Pages in C#.NET Application. C# TIFF Page Sorting Overview. Reorder TIFF Pages in C#.NET Application.
pdf reorder pages online; how to reorder pages in pdf file
VB.NET PowerPoint: Sort and Reorder PowerPoint Slides by Using VB.
Sort and Reorder PowerPoint Slides Range with VB amount of robust PPT slides/pages editing methods powerful & profession imaging controls, PDF document, image
how to change page order in pdf document; reorder pages in pdf reader
177 
Loading Report Data 
In addition to a report definition, C1Report needs the actual data to create the report. In most cases, the data 
comes from a database, but there are other options. 
Loading Data from a Database 
The simplest option for loading the report data is to set the C1Report control's DataSource properties: 
ConnectionString and RecordSource. If these properties are set, C1Report uses them to load the data from the 
database automatically and no additional work is needed. 
To select a data source for a new report: 
1.
In the C1ReportDesigner application, select the Add New Report button: 
Read PDF in Web Image Viewer| Online Tutorials
from PDF documents; Extract images from PDF documents; Add, reorder pages in PDF files; Save and print PDF as you wish; More PDF Reading
pdf reverse page order; rearrange pdf pages online
VB.NET TIFF: Modify TIFF File by Adding, Deleting & Sort TIFF
Users can use it to reorder TIFF pages in ''' &ltsummary> ''' Sort TIFF document pages in designed powerful & profession imaging controls, PDF document, image
reordering pdf pages; reorder pdf page
178  
The C1Report Wizard appears and walks you through the steps of creating a new report from start to 
finish. 
2.
In the first step of the wizard you must select a data source. Click the Build connection string button 
The Data Link Properties dialog box appears. 
3.
You must first select a data provider. Select the Provider tab and select a data provider from the list. For 
this example, select Microsoft Jet 4.0 OLE DB Provider. 
C# PDF Page Rotate Library: rotate PDF page permanently in C#.net
page, it is also featured with the functions to merge PDF files using C# .NET, add new PDF page, delete certain PDF page, reorder existing PDF pages and split
change page order in pdf file; reverse pdf page order online
C# PDF: C# Code to Process PDF Document Page Using C#.NET PDF
just following attached links. C# PDF: Add, Delete, Reorder PDF Pages Using C#.NET, C# PDF: Merge or Split PDF Files Using C#.NET.
how to reorder pages in pdf reader; how to move pages within a pdf
179 
4.
Click the Next button or select the Connection tab. Now you must choose a data source. 
5.
To select a database, click the ellipsis button. The Select Access Database dialog box appears. For this 
example, select the Nwind.mdb located in the ComponentOne Samples\Common directory in the 
Documents or My Documents folder. Note that this directory reflects the default installation path and its 
path may be different if you made changes to the installation path. 
6.
Click Open. Test the connection, if you choose, and click OK. 
7.
Click OK to close the Select Access Database dialog box. 
8.
Once you have selected your data source, you can select a table, view, or stored procedure to provide the 
actual data. You can specify the RecordSource string in two ways: 
Click the Table option and select a table from the list. 
Click the SQL option and type (or paste) an SQL statement into the editor. 
For example: 
select * from products inner join categories on categories.categoryid = 
products.categoryid 
9.
Click Next. The wizard will walk you through the remaining steps. 
For more details on the C1Report Wizard, see Creating a Basic Report Definition. 
.NET Multipage TIFF SDK| Process Multipage TIFF Files
SDK, developers are easily to access, extract, swap, reorder, insert, mark up and delete pages in any multi upload to SharePoint and save to PDF documents.
how to move pages in pdf acrobat; reverse page order pdf online
C# Word: How to Create Word Document Viewer in C#.NET Imaging
in C#.NET; Offer mature Word file page manipulation functions (add, delete & reorder pages) in document viewer; Rich options to add
reorder pages in a pdf; reorder pages in pdf file
180  
Loading Data from a Stored Procedure 
Stored procedures (or sprocs) can assist you in achieving a consistent implementation of logic across applications, 
improve performance, and shield users from needing to know the details of the tables in the database. One of the 
major advantages to stored procedures is you can pass in parameters to have the database filter the recordset. This 
returns a smaller set of data, which is quicker and easier for the report to manipulate. 
You can populate a report from a stored procedure in the C1Report Wizard. To open the C1Report Wizard 
complete one of the following: 
From the C1ReportDesigner application, click the New Report button from the Reports tab 
In Visual Studio by select Edit Report from the C1Report context menu  
In Visual Studio by select Edit Report from the C1Report Tasks menu 
For more information accessing the Edit Report link, see C1Report Tasks Menu or C1Report Context Menu
Populating a report from a stored procedure is no different than using SQL statements or straight tables. In the first 
screen of the C1ReportWizard, click the ellipses button to choose a datasource. Then choose a Stored Procedure 
from the list of available Data sources: 
Select Next and continue through the wizard. 
As with loading other forms of data, you have two options:  
You can use the DataSource's ConnectionString and RecordSource properties to select the datasource: 
In the Designer, use the DataSource dialog box to select the connection string (by clicking the ellipses 
button "..."), then pick the table or sproc you want to use from the list. For example: 
181 
connectionstring = "Provider=SQLOLEDB.1;Integrated Security=SSPI;" + "Persist Security 
Info=False;Initial Catalog=Northwind;Data Source=YOURSQLSERVER;" recordsource = "[Employee 
Sales by Country]('1/1/1990', '1/1/2010')" 
(In this case the stored procedure name has spaces, so it's enclosed in square brackets). 
You can create the data source using whatever method you want, then assign it to the DataSource's 
Recordset property: 
This method requires you to write code, and is useful when you have your data cached somewhere and 
want to use it to produce several reports. It overrides the previous method (it you specify 
ConnectionString, RecordSource, and Recordset, C1Report will use the Recordset). 
The syntax will be different depending on the type of connection/adapter you want to use (OleDb, SQL, 
Oracle, and so on). The easiest way to get the syntax right is to drag tables or sprocs from Visual Studio's 
Server Explorer onto a form. That will add all the cryptic elements required, and then you can go over the 
code and pick up the pieces you want. 
You can specify stored procedures as data sources by their name. If the sproc has parameters, you pass them as 
parameters, for example: 
Loading Data from an XSD File 
XSD files are XML Schema Documents. Reports for WinForms is compatible with XSD files, allowing you to 
load report data from an XSD file. To load the report data, you can set the ConnectionString property to the name 
of an XSD file. XSD files contain XML representations of ADO.NET DataSet objects. So in this case, you would 
set the RecordSource property to the name of a table in the DataSet. 
Note: To create an XSD file, take an existing DataSet object and call the WriteXml method using the 
XmlWriteMode.WriteSchema parameter. 
Loading an XSD file in the C1ReportDesigner application is quite simple using the C1Report Wizard. Complete 
the following steps to open an XSD file: 
1.
Open the C1Report Wizard by completing one of the following: 
From the C1ReportDesigner application, click the New Report button from the Reports tab 
In Visual Studio by select Edit Report from the C1Report context menu  
In Visual Studio by select Edit Report from the C1Report Tasks menu 
This will open the C1Report Wizard. You can select an XSD file in the first screen of the 
C1ReportWizard. For more information accessing the Edit Report link, see C1Report Tasks Menu or 
C1Report Context Menu.  
2.
In the C1Report Wizard, click the Select XSD file button next to the Connection String text box. The 
Select XSD file button appears as an open folder icon: 
182  
This button will open the Select XML Schema Definition File dialog box.  
3.
Navigate to an XSD file, select it, and click the Open button to open the XSD file. 
The selected file will open in the C1ReportDesigner application. You can edit and format the file. See 
Working with C1ReportDesigner for details. 
Using a DataTable Object as a Data Source 
Many applications need to work on the data outside of C1Report and load it into DataTable objects. In these 
cases, you may use these objects as report data sources, avoiding the need to load them again when rendering the 
report. 
This approach is also useful in applications where: 
Security restrictions dictate that connection strings must be kept private and only the data itself may be 
exposed (not its source). 
The database is not supported by OleDb (the provider used internally by C1Report). 
The data does not come from a database at all. Instead, the DataTable is created and populated using 
custom code. 
To use a DataTable object as a C1Report data source, simply load the report definition and then assign the 
DataTable to the C1Report Recordset property. For example: 
Visual Basic 
' load DataTable from cache or from a secure/custom provider 
Dim dt As DataTable = GetMyDataTable() 
' load report definition (before setting the data source) 
c1r.Load(reportFile, reportName) 
' use DataTable as the data source for the C1Report component 
c1r.DataSource.Recordset = dt 
C# 
// load DataTable from cache or from a secure/custom provider 
DataTable dt = GetMyDataTable(); 
// load report definition (before setting the data source) 
c1r.Load(reportFile, reportName); 
183 
// use DataTable as the data source for the C1Report component 
c1r.DataSource.Recordset = dt; 
Using Custom Data Source Objects 
You can use custom objects as data sources. The only requirement is that the custom object must implement the 
IC1ReportRecordset interface. 
IC1ReportRecordset is a simple and easy-to-implement interface that can be added easily to virtually any 
collection of data. This is often more efficient than creating a DataTable object and copying all the data into it. For 
example, you could use custom data source objects to wrap a file system or custom XML files. 
To use a custom data source objects, load the report definition and then assign the object to the 
C1Report.Recordset property. For example: 
Visual Basic 
' get custom data source object 
Dim rs As IC1ReportRecordset = CType(GetMyCustomDataSource(), 
IC1ReportRecordset) 
' load report definition (before setting the data source) 
c1r.Load(reportFile, reportName) 
' use custom data source object in C1Report component 
c1r.DataSource.Recordset = rs 
C# 
// get custom data source object 
IC1ReportRecordset rs = (IC1ReportRecordset)GetMyCustomDataSource(); 
// load report definition (before setting the data source) 
c1r.Load(reportFile, reportName); 
// use custom data source object in C1Report component 
c1r.DataSource.Recordset = rs; 
Grouping and Sorting Data 
This section shows how you can organize the data in your report by grouping and sorting data, using running 
sums, and creating aggregate expressions.  
Grouping Data 
After designing the basic layout, you may decide that grouping the records by certain fields or other criteria would 
make the report easier to read. Grouping allows you to separate groups of records visually and display introductory 
and summary data for each group. The group break is based on a grouping expression. This expression is usually 
based on one or more recordset fields but it can be as complex as you like.  
You can group the data in your reports using the C1ReportDesigner application or using code: 
Adding grouping and sorting using C1ReportDesigner 
Groups are also used for sorting the data, even if you don't plan to show the Group Header and Footer 
sections. You can add groups to your report using the C1ReportDesigner application. 
184  
To add or edit the groups in the report, complete the following steps: 
a.
Open the C1ReportDesigner application. For details, see Accessing C1ReportDesigner from Visual 
Studio
b.
Click the Sorting and Grouping button on the Design tab in the Data group.  
The Sorting and Grouping dialog box appears. You can use this dialog box to create, edit, reorder, 
and delete groups. 
c.
To create a group, click the Add button and set the properties for the new group. 
The Group By field defines how the records will be grouped in the report. For simple grouping, you 
can select fields directly from the drop-down list. For more complex grouping, you can type grouping 
expressions. For example, you could use Country to group by country or Left(Country, 1) to group 
by country initial.  
d.
To follow along with this report, select Country for the Group By expression. 
e.
Next, select the type of sorting you want (Ascending in this example). You can also specify whether 
the new group will have visible Header and Footer sections, and whether the group should be 
rendered together on a page. 
Note: You cannot use memo or binary (object) fields for grouping and sorting. This is a limitation imposed 
by OLEDB. 
Here's what the Sorting and Grouping dialog box should look like at this point: 
Documents you may be interested
Documents you may be interested