xtrareports-devexpress-dot-xtrareports-dot-ui-dot-xtrareportbase-87cb850c.md
Gets the collection of bands contained in a report.
Namespace : DevExpress.XtraReports.UI
Assembly : DevExpress.XtraReports.v25.2.dll
NuGet Package : DevExpress.Reporting.Core
[SRCategory(ReportStringId.CatStructure)]
public BandCollection Bands { get; }
<SRCategory(ReportStringId.CatStructure)>
Public ReadOnly Property Bands As BandCollection
| Type | Description |
|---|---|
| BandCollection |
A BandCollection object that is the collection of bands contained in a report.
|
To learn more about the bands used in reports see the Introduction to Banded Reports topic.
The following example demonstrates how to use the BandCollection class methods to construct a simple report. The AddMarginBands method creates two margin bands and adds them to the collection.
using DevExpress.XtraPrinting;
using DevExpress.XtraReports.UI;
// ...
public class XtraReport1 : DevExpress.XtraReports.UI.XtraReport {
// ...
// ...
// Generated code for the XtraReport1 class.
// ...
public void AddMarginBands() {
// Check if the TopMargin band is already present in the report.
if(Bands[BandKind.TopMargin] == null) {
// Create a new TopMargin band and add it to the report.
TopMarginBand tmBand = new TopMarginBand();
Bands.Add(tmBand);
// Create a label and set its text and width.
XRLabel label = new XRLabel();
label.Text = "TopMargin Band";
label.Width = 200;
// Add the label to the TopMargin band.
tmBand.Controls.Add(label);
}
// Check if the BottomMargin band is already present in the report.
if(Bands[BandKind.BottomMargin] == null) {
// Create a new BottomMargin band and add it to the report.
BottomMarginBand bmBand = new BottomMarginBand();
Bands.Add(bmBand);
// Create an XRPageInfo object and set its width and PageInfo option.
XRPageInfo datePageInfo = new XRPageInfo();
datePageInfo.Width = 200;
datePageInfo.PageInfo = PageInfo.DateTime;
// Add the page information control to the BottomMargin band.
bmBand.Controls.Add(datePageInfo);
}
}
}
Imports DevExpress.XtraPrinting
Imports DevExpress.XtraReports.UI
' ...
Public Class XtraReport1
Inherits DevExpress.XtraReports.UI.XtraReport
' ...
' ...
' Generated code for the XtraReport1 class.
' ...
Public Sub AddMarginBands()
' Check if the TopMargin band is already present in the report.
If Bands.GetBandByType(GetType(TopMarginBand)) Is Nothing Then
' Create a new TopMargin band and add it to the report.
Dim tmBand As New TopMarginBand()
Bands.Add(tmBand)
' Create a label and set its text and width.
Dim label As New XRLabel()
label.Text = "TopMargin Band"
label.Width = 200
' Add the label to the TopMargin band.
tmBand.Controls.Add(label)
End If
' Check if the BottomMargin band is already present in the report.
If Bands.GetBandByType(GetType(BottomMarginBand)) Is Nothing Then
' Create a new BottomMargin band and add it to the report.
Dim bmBand As New BottomMarginBand()
Bands.Add(bmBand)
' Create an XRPageInfo object and set its width and PageInfo option.
Dim datePageInfo As New XRPageInfo()
datePageInfo.Width = 200
datePageInfo.PageInfo = PageInfo.DateTime
' Add the page information control to the BottomMargin band.
bmBand.Controls.Add(datePageInfo)
End If
End Sub
End Class
The following code handles button clicks to call the AddMarginBands method and show the preview:
XtraReport1 report = new XtraReport1();
private void btnPreview_Click(object sender, System.EventArgs e) {
ReportPrintTool preview = new ReportPrintTool(report);
preview.ShowPreview();
}
private void btnAddBands_Click(object sender, System.EventArgs e) {
report.AddMarginBands();
}
Dim Report As New XtraReport1()
Private Sub BtnPreview_Click(sender As Object, e As System.EventArgs) _
Handles BtnPreview.Click
Dim preview As New ReportPrintTool(report)
preview.ShowPreview()
End Sub
Private Sub BtnAddBands_Click(sender As Object, e As System.EventArgs) _
Handles BtnAddBands.Click
Report.AddMarginBands()
End Sub
The following code snippets (auto-collected from DevExpress Examples) contain references to the Bands property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.
reporting-winforms-create-hierarchical-report-from-flat-table/CS/TreeViewReport/ChildReport.cs#L29
subreport.WidthF = report.PageWidth;
foreach(Band band in report.Bands)
foreach(XRControl control in band.Controls) {
var report = e.Report as XtraReport;
var topMarginBand = report.Bands[BandKind.TopMargin];
reporting-winforms-create-hierarchical-report-from-flat-table/VB/TreeViewReport/ChildReport.vb#L30
subreport.WidthF = report.PageWidth
For Each band As Band In report.Bands
For Each control As XRControl In band.Controls
Dim report = TryCast(e.Report, XtraReport)
Dim topMarginBand = report.Bands(BandKind.TopMargin)
See Also