XtraReportBase.FilterString Property

Specifies the criteria used to filter data in a report.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v19.2.dll

Declaration

[DefaultValue("")]
[SRCategory(ReportStringId.CatData)]
public virtual string FilterString { get; set; }
<DefaultValue("")>
<SRCategory(ReportStringId.CatData)>
Public Overridable Property FilterString As String

Property Value

Type Default Description
String

String.Empty

A String value, specifying the filter criteria.

Remarks

Use the FilterString property to invoke the FilterString Editor that enables you to specify filter criteria.

filter-data-filter-srting-editor

At runtime, the FilterString property must be set before calling the XtraReport.CreateDocument method or any other method that calls it internally (e.g., PrintTool.ShowPreview, PrintTool.ShowPreviewDialog, PrintToolBase.Print, PrintTool.PrintDialog and all exporting methods). Setting this property is appropriate in the following event handlers.

You can also handle the XRControl.BeforePrint event of a specific report band (e.g., the DetailBand). In this event handler, you can access the current data row using the XtraReportBase.GetCurrentRow and XtraReportBase.GetCurrentColumnValue methods and cancel printing of the band under a specific condition using the e.Cancel property.

Examples

This example demonstrates how to create a report with a parameter at runtime.

After a parameter is added to the report, its value can be used in the report's XtraReportBase.FilterString, or displayed in a XRLabel control.

Then, when the report is being previewed, an end-user can modify the parameter's value via the Parameters UI, which is enabled using the ReportPrintTool.AutoShowParametersPanel property.

using System;
using System.Windows.Forms;
using DevExpress.XtraReports.UI;
using DevExpress.XtraReports.Parameters;
// ...

private void simpleButton1_Click(object sender, EventArgs e) {
    // Create a report instance.
    XtraReport1 report = new XtraReport1();

    // Create a parameter and specify its name.
    Parameter param1 = new Parameter();
    param1.Name = "CatID";

    // Specify other parameter properties.
    param1.Type = typeof(System.Int32);
    param1.Value = 1;
    param1.Description = "Category: ";
    param1.Visible = true;

    // Add the parameter to the report.
    report.Parameters.Add(param1);

    // Specify the report's filter string.
    report.FilterString = "[CategoryID] = ?CatID";

    // Force the report creation without previously 
    // requesting the parameter value from end-users.
    report.RequestParameters = false;

    // Show the parameter's value on a Report Header band.
    XRLabel label = new XRLabel();
    label.DataBindings.Add(new XRBinding(param1, "Text", "Category: {0}"));
    ReportHeaderBand reportHeader = new ReportHeaderBand();
    reportHeader.Controls.Add(label);
    report.Bands.Add(reportHeader);

    // Assign the report to a ReportPrintTool,
    // to hide the Parameters panel,
    // and show the report's print preview.
    ReportPrintTool pt = new ReportPrintTool(report);
    pt.AutoShowParametersPanel = true;
    pt.ShowPreviewDialog();
}
See Also