# Advantages of Flow Type Layout Reporting vs. Banded Reporting or PDF Template Engines in .NET C#

> This article shows the advantages of flow type layout reporting compared to banded reporting or populating PDF placeholders in .NET C#. It explains the differences and the benefits of using a flow type layout reporting approach.

- **Author:** Bjoern Meyer
- **Published:** 2024-07-29
- **Modified:** 2026-07-17
- **Description:** This article shows the advantages of flow type layout reporting compared to banded reporting or populating PDF placeholders in .NET C#. It explains the differences and the benefits of using a flow type layout reporting approach.
- **7 min read** (1276 words)
- **Tags:**
  - ASP.NET
  - ASP.NET Core
  - Reporting
  - MailMerge
- **Web URL:** https://www.textcontrol.com/blog/2024/07/29/advantages-of-flow-type-layout-reporting-vs-banded-reporting-or-pdf-template-engines-in-net-c-sharp/
- **LLMs URL:** https://www.textcontrol.com/blog/2024/07/29/advantages-of-flow-type-layout-reporting-vs-banded-reporting-or-pdf-template-engines-in-net-c-sharp/llms.txt
- **LLMs-Full URL:** https://www.textcontrol.com/blog/2024/07/29/advantages-of-flow-type-layout-reporting-vs-banded-reporting-or-pdf-template-engines-in-net-c-sharp/llms-full.txt

---

There are several technical approaches to creating dynamic documents such as reports or other text documents:

- **Banded Reports**A common approach to creating dynamic documents is to use banded reports. In this approach, the document is divided into bands. Each band is responsible for rendering a specific part of the document. For example, one band might be responsible for rendering the header, while another band might be responsible for rendering the body of the document. This approach is used in reporting tools such as Crystal Reports and JasperReports.
- **Template Engines**Template engines are another approach to creating dynamic documents. Template engines allow you to define a template that contains placeholders for dynamic content to be inserted. Typically, the template is written in a markup language such as HTML or XML, and the placeholders are replaced with the actual content at runtime. Popular template engines include Smarty, Twig, and Mustache.
- **Document Generation Libraries**Another way to create dynamic documents is to use the TX Text Control document generation library. This library allows you to create documents programmatically using a powerful API or from templates using the MailMerge engine. The library supports a wide range of document formats, including DOCX, PDF, and RTF.

### Banded Reports Drawbacks

Banded reports are a popular approach to creating dynamic documents. However, they have several drawbacks that you should be aware of. The nature of banded reports makes them inflexible and difficult to maintain. Designing complex layouts can be challenging and banded reports are often tightly coupled to the data source, making it difficult to reuse the report with different data sources.

The missing WYSIWYG design experience is another drawback of banded reports. The design-time experience is often limited to a drag-and-drop designer that doesn't provide a true WYSIWYG experience. This can make it difficult to design complex layouts and can lead to frustration for developers.

Very often, templates must be designed by developers and can't be modified by end-users. This can be a significant limitation in scenarios where end-users need to customize the layout of the document.

### Template Engines Drawbacks

Template engines require you to write templates in a markup language, which can be cumbersome and error-prone. The markup language used by template engines is often unexpressive, making complex layouts difficult to create.

In particular, PDF engines that fill dynamic content into placeholders have the drastic disadvantage of not being able to control the flow of text. Consider a template with a placeholder that dynamically fills with longer text. If the text is so long that a new page should be added, surrounding elements such as tables, table headers, or headers and footers should be automatically adjusted. But this is not the case with most template engines. Or, if only one line of a paragraph won't fit on the same page, you may want to move the entire paragraph to the next page. These are requirements that are usually not met by template engines.

### Flow Type Layout Document Generation

The Flow Type Layout Reporting in TX Text Control is a method where the report content is integrated seamlessly into a continuous flow, similar to how word processing documents work. TX Text Control reporting is available for ASP.NET, ASP.NET Core, Windows Forms, and WPF applications. Front-end designers are available for any client-side framework, including ASP.NET MVC, Blazor, JavaScript, Angular, or React.

> **Live Demos**
> 
> Check out our full-featured live demos to experience the TX Text Control reporting engine and easy-to-use document template editor.
> 
> [ Live Demo ](https://demos.textcontrol.com/chapter/topic/RichTextEditor/MailMergeOverview)

Instead of using fixed bands or sections, this approach allows for dynamic adjustment of content, enabling elements like text, images, and tables to **flow naturally across pages**. The concept emphasizes flexibility and ease of use, ensuring that the report adapts to content changes automatically without requiring extensive reformatting, which makes it easier to handle complex documents and large data sets while maintaining a polished, professional appearance.

The reusability of templates in TX Text Control is enhanced because they are not directly bound to data sources. This decoupling allows templates to be designed and utilized independently of the specific data being inserted, making them highly versatile. A template contains only merge field names and repeating merge block names, not a connection string to databases.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer.webp "Creating documents with TX Text Control")

TX Text Control provides a **WYSIWYG template designer** that allows end-users to create and modify templates without requiring programming skills. The designer provides a true WYSIWYG experience, enabling users to see the final document layout as they design it. This empowers users to create complex layouts with ease, reducing the need for developer intervention.

#### Keep Lines Together

TX Text Control provides a feature called **Keep lines together** that ensures that a paragraph is not split across pages. This feature is particularly useful when you want to keep headings or paragraphs together on the same page.

When a paragraph is too long to fit on the current page, TX Text Control automatically moves the entire paragraph to the next page, ensuring that the paragraph remains intact. Consider the following template where a merge field is at the end of a page with only a few lines of space left at the end of the page.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer2.webp "Creating documents with TX Text Control")

Normally, the paragraph would be split across pages, resulting in an unprofessional appearance as shown below.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer3.webp "Creating documents with TX Text Control")

With the *Keep lines together* feature enabled, the entire paragraph is moved to the next page, ensuring that the paragraph remains intact and maintains a professional appearance.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer5.webp "Creating documents with TX Text Control")

When a paragraph breaks across pages, you can also control how many lines should be at least on the current page and on the next page.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer6.webp "Creating documents with TX Text Control")

To keep multiple paragraphs together, you can link them with the *Keep with next* setting. In the following example, you can see that there wouldn't be enough space on the current page for the dynamic paragraph and the following paragraph, which are linked. The result is that the entire block of paragraphs is moved to the next page.

![Creating documents with TX Text Control](https://s1-www.textcontrol.com/assets/dist/blog/2024/07/29/a/assets/designer7.webp "Creating documents with TX Text Control")

> **Pro Tip**
> 
> This article explains why to avoid forced page breaks in document templates and how to create templates that automatically adjust to the content using other word processing features.
> 
> [Document Templates Tip: Say No to Forced Page Breaks ](https://www.textcontrol.com/blog/2024/05/28/document-templates-tip-say-no-to-forced-page-breaks/llms-full.txt)

### Conclusion

Flow Type Layout Reporting is a powerful method for creating dynamic documents that adapt to content changes automatically. This approach provides flexibility and ease of use, enabling you to create complex documents with ease. By using TX Text Control, you can take advantage of a WYSIWYG template designer that empowers end-users to create and modify templates without requiring programming skills. This approach allows you to create professional-looking documents that are easy to maintain and reuse.

Download a free trial of TX Text Control and start creating dynamic documents today!

---

## About Bjoern Meyer

As CEO, Bjoern is the visionary behind our strategic direction and business development, bridging the gap between our customers and engineering teams. His deep passion for coding and web technologies drives the creation of innovative products. If you're at a tech conference, be sure to stop by our booth - you'll most likely meet Bjoern in person. With an advanced graduate degree (Dipl. Inf.) in Computer Science, specializing in AI, from the University of Bremen, Bjoern brings significant expertise to his role. In his spare time, Bjoern enjoys running, paragliding, mountain biking, and playing the piano.

- [LinkedIn](https://www.linkedin.com/in/bjoernmeyer/)
- [X](https://x.com/txbjoern)
- [GitHub](https://github.com/bjoerntx)

---

## Related Posts

- [Best Practices for Mail Merge and Form Field Processing in ASP.NET Core C# Applications](https://www.textcontrol.com/blog/2024/07/30/best-practices-for-mail-merge-and-form-field-processing-in-asp-net-core-csharp-applications/llms.txt)
- [C# Document Generation: A Developer's Guide for .NET](https://www.textcontrol.com/blog/2026/07/08/csharp-document-generation-developer-guide-for-dotnet/llms.txt)
- [Create SignFabric Envelopes from Mail Merge Templates in .NET C#](https://www.textcontrol.com/blog/2026/06/23/create-signfabric-envelopes-from-mail-merge-templates-using-dotnet-csharp/llms.txt)
- [Convert SSRS RDL Reports to DOCX and TX Text Control Templates in .NET C#](https://www.textcontrol.com/blog/2026/06/22/convert-ssrs-rdl-reports-to-docx-and-tx-text-control-templates-in-dotnet-csharp/llms.txt)
- [Use MailMerge in .NET on Linux to Generate Pixel-Perfect PDFs from DOCX Templates](https://www.textcontrol.com/blog/2025/05/27/use-mailmerge-in-dotnet-on-linux-to-generate-pixel-perfect-pdfs-from-docx-templates/llms.txt)
- [Generating Dynamic NDAs Using TX Text Control MailMerge in C# .NET](https://www.textcontrol.com/blog/2025/04/08/generating-dynamic-ndas-using-tx-text-control-mailmerge-in-csharp-dotnet/llms.txt)
- [Designing a Maintainable PDF Generation Web API in ASP.NET Core (Linux) C# with Clean Architecture and TX Text Control](https://www.textcontrol.com/blog/2025/03/27/designing-a-maintainable-pdf-generation-web-api-in-asp-net-core-linux-c-sharp-with-clean-architecture-and-tx-text-control/llms.txt)
- [Manipulating Table Cells During the MailMerge Process in .NET C#](https://www.textcontrol.com/blog/2024/12/03/manipulating-table-cells-during-the-mailmerge-process-in-net-csharp/llms.txt)
- [When to Generate Documents Server-Side Instead of Client-Side: A Focus on Data Security](https://www.textcontrol.com/blog/2024/10/04/when-to-generate-documents-server-side-instead-of-client-side-a-focus-on-data-security/llms.txt)
- [Mail Merge: Inserting Merge Blocks using the DataSourceManager in C#](https://www.textcontrol.com/blog/2024/10/02/mail-merge-inserting-merge-blocks-using-the-datasourcemanager-in-csharp/llms.txt)
- [Creating Advanced Tables in PDF and DOCX Documents with C#](https://www.textcontrol.com/blog/2024/09/30/creating-advanced-tables-in-pdf-and-docx-documents-with-csharp/llms.txt)
- [Designing the Perfect Contract Template for MailMerge in C#](https://www.textcontrol.com/blog/2024/09/26/designing-the-perfect-contract-template-for-mailmerge-in-csharp/llms.txt)
- [Video Tutorial: Creating a MailMerge Template and JSON Data Structure](https://www.textcontrol.com/blog/2024/08/16/video-tutorial-creating-a-mailmerge-template-and-json-data-structure/llms.txt)
- [Getting Started Video Tutorial: How to use the MailMerge and ServerTextControl Classes in ASP.NET Core C#](https://www.textcontrol.com/blog/2024/08/05/getting-started-video-tutorial-how-to-use-the-mailmerge-and-servertextcontrol-classes-in-asp-net-core-c/llms.txt)
- [Getting Started Videos: New Text Control YouTube Channel](https://www.textcontrol.com/blog/2024/08/02/getting-started-videos-new-text-control-youtube-channel/llms.txt)
- [Designing a MailMerge Web API Endpoint with ASP.NET Core in C#](https://www.textcontrol.com/blog/2024/07/12/designing-a-mailmerge-web-api-endpoint-with-asp-net-core-in-c-sharp/llms.txt)
- [Enhancing Documents with QR Codes and Barcodes in .NET C#: A Comprehensive Guide](https://www.textcontrol.com/blog/2024/07/11/enhancing-documents-with-qr-codes-and-barcodes-in-net-csharp-a-comprehensive-guide/llms.txt)
- [Document Automation 101: Leveraging TX Text Control for Business Efficiency in .NET C# Applications](https://www.textcontrol.com/blog/2024/07/09/document-automation-101-leveraging-tx-text-control-for-business-efficiency-in-net-c-applications/llms.txt)
- [Merging Templates with MailMerge with Different Merge Field Settings in C#](https://www.textcontrol.com/blog/2023/12/16/merging-templates-with-mailmerge-with-different-merge-field-settings/llms.txt)
- [How to Mail Merge MS Word DOCX Documents in ASP.NET Core C#](https://www.textcontrol.com/blog/2023/10/16/how-to-mail-merge-ms-word-docx-documents-in-aspnet-core-csharp/llms.txt)
- [MailMerge: Working with Image Placeholders](https://www.textcontrol.com/blog/2022/12/22/mailmerge-working-with-image-placeholders/llms.txt)
- [Getting Started: ServerTextControl and MailMerge with ASP.NET Core](https://www.textcontrol.com/blog/2022/09/01/getting-started-servertextcontrol-and-mailmerge-with-aspnet-core/llms.txt)
- [Adding SVG Watermarks to Documents](https://www.textcontrol.com/blog/2022/01/28/adding-svg-watermarks-to-documents/llms.txt)
- [Using MailMerge in ASP.NET Core 6 Web Applications](https://www.textcontrol.com/blog/2022/01/27/using-mailmerge-in-aspnet-core-6-web-applications/llms.txt)
- [AI Natural Language Document Generation with MCP and TX Text Control .NET](https://www.textcontrol.com/blog/2026/07/16/ai-natural-language-document-generation-with-mcp-server-and-tx-text-control-dotnet/llms.txt)
