Skip to main content

RangeParametersSettings Class

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

Namespace: DevExpress.XtraReports.Parameters

Assembly: DevExpress.Printing.v24.2.Core.dll

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