Skip to main content
A newer version of this page is available. .

Swiss QR Bills

  • 3 minutes to read

This tutorial demonstrates how to design a report similar to the Swiss QR Bill demo. You can view the online or desktop demo (the DevExpress Demo Center should be installed).

Swiss Bill - Result


The How to Create a Custom DevExpress Report Control - Swiss QR Bill Implementation GitHub project illustrates how to implement a custom SwissQRBill control.

Add a Report

To get started with this tutorial, open an existing reporting application or create a new application (the Add a Report to Your .NET Application section explains how to create a reporting application on different platforms).

  1. Add a new blank report to your application.

  2. Select the report on the Report Designer’s surface and switch to the Property Grid. Set the following properties:

    Swiss Bill - Report Settings

    • Set the report’s Page Settings | PaperKind property to A4.

    • Set the report’s Behavior | ReportUnit property to TenthsOfAMillimeter.

    • Set the report’s Margins | Left, Bottom, and Right properties to 0.

Add the QR-bill Payment Part and Receipt

  1. Add the Report Footer band to the report.

    Swiss Bill - Add Report Footer

  2. Enable the Report Footer band’s Print At Bottom property to display the band’s content at the bottom of report pages.

    Swiss Bill - Report Footer Settings

  3. Add the XRPanel control to the Report Footer band’s bottom right-hand corner. The panel and report page’s bottom right corners should be at the same place.

    Swiss Bill - Add Panel

  4. Set the panel’s Size | Height property to 1050 and the Size | Width property - to 1480. This size corresponds to A6 format.

  5. Add one more XRPanel control to the Report Footer band’s bottom left-hand corner. The panel and report page’s bottom left corners should be at the same place.

    Swiss Bill - Add Panel

  6. Set the panel’s Size | Height property to 1050 and the Size | Width property - to 620.

  7. Disable the panels’ Behavior | CanGrow property to fix the panels’ size regardless their content.

Prepare Data Source

The QR payment part and receipt should contain account, creditor, and debtor information. Include this data in the report’s data source.

The Swiss QR Bill demo uses the BillDS business class as the report’s data source. Copy the SwissQRReportDataSource.cs/SwissQRReportDataSource.vb file with this class from the C:\Users\Public\Documents\DevExpress Demos 20.2\Components\Reporting\CS\DevExpress.DemoReports\SwissQRCode folder to your project to use this tutorial.

Swiss Bill - Add Data Source File

Save the project and build the solution.

Run the Data Source Wizard to bind the report to the added class’ data.

Add Report Controls

The receipt and QR payment part should include the following sections:

Swiss Bill - Sections

Use the following report controls for these sections:

Section Control
Title XRLabel
Swiss QR Code XRBarCode
Information XRTable
Amount XRTable
Acceptance point XRLabel

Arrange these controls on the report’s panel and apply font settings according to the QR bill guidelines.

Bind the table cells to the data source fields.


Do the following to set up the XRBarCode control:

  • Bind the XRBarCode control (set its Text property) to the demo data source’s [QRBillData].[QRCodeData] field. This field provides data prepared in code.

  • Set the Size | Width and Height properties to 460. (The guidelines recommend 46 x 46 mm).

  • Set the following properties in the Behavior category:

  • Set the QRCode-specific properties in the Symbology group:

View the Result

Switch to Preview to see the result: