Skip to main content
All docs
V25.1
  • RangeParametersSettings Class

    Provides the nested start and end parameters for a report‘s date range parameter.

    Namespace: DevExpress.XtraReports.Parameters

    Assembly: DevExpress.Printing.v25.1.Core.dll

    NuGet Package: DevExpress.Printing.Core

    Declaration

    public class RangeParametersSettings :
        ValueSourceSettings

    Remarks

    The RangeParameterSettings class allows you to configure a date range parameter‘s nested start and end date parameters.

    Assign a RangeParametersSettings class instance to a parameter’s ValueSourceSettings property to specify that the parameter represents a date range. You can also set the parameter’s ValueSourceSettings property to:

    Set the following properties to specify the date range:

    Ensure that the parameter’s Type is set to DateTime - otherwise the report generates an error in Print Preview.

    If the parameter is visible, an editor allows users to specify a date range in Print Preview. The editor provides a list of predefined date ranges that users can select from.

    In WinForms and WPF applications, you can use the RangeParameterEditorOptions static class to customize the list of predefined date ranges.

    Example

    The code sample below uses a RangeParametersSettings class instance to create a date range parameter, set the range value to the last 7 days, and filter report data by this range.

    using DevExpress.XtraReports.Parameters;
    using DevExpress.XtraReports.Expressions;
    // ...
    XtraReport1 report = new XtraReport1();
    // Create a date range parameter.
    Parameter myDateRange = new Parameter();
    myDateRange.Name = "myDateRange";
    myDateRange.Description = "Date Range:";
    // Set the Visible property to true to request the parameter value from users.
    // Set this property to false to silently apply the parameter's value.
    myDateRange.Visible = false;
    myDateRange.Type = typeof(System.DateTime);
    RangeParametersSettings myDateRangeSettings = new RangeParametersSettings();
    myDateRangeSettings.StartParameter.Name = "MyDateRangeStart";
    // Set the range parameter's start date to 7 days ago.
    myDateRangeSettings.StartParameter.ExpressionBindings.Add(new BasicExpressionBinding("Value", "AddDays(Today(), -7)"));
    myDateRangeSettings.EndParameter.Name = "MyDateRangeEnd";
    // Set the range parameter's end date to today.
    myDateRangeSettings.EndParameter.ExpressionBindings.Add(new BasicExpressionBinding("Value", "Today()"));
    myDateRange.ValueSourceSettings = myDateRangeSettings;
    report.Parameters.Add(myDateRange);
    // Filter report data by the specified start and end dates.
    report.FilterString = "GetDate([OrderDate]) Between(?MyDateRangeStart,?MyDateRangeEnd)";
    

    Inheritance

    Object
    ValueSourceSettings
    RangeParametersSettings
    See Also