Skip to main content
All docs
V25.1
  • LookUpHelper.GetLookUpValues(ValueSourceSettings, DataContextBase, IParameterEditorValueProvider) Method

    Returns a collection of parameter look-up values.

    Namespace: DevExpress.XtraReports.Parameters

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

    NuGet Package: DevExpress.Printing.Core

    Declaration

    public static LookUpValueCollection GetLookUpValues(
        ValueSourceSettings valueSourceSettings,
        DataContextBase dataContext,
        IParameterEditorValueProvider parameterValueProvider = null
    )

    Parameters

    Name Type Description
    valueSourceSettings ValueSourceSettings

    Settings for a source of the parameter look-up values.

    dataContext DevExpress.Data.Browsing.DataContextBase

    A DataContext object.

    Optional Parameters

    Name Type Default Description
    parameterValueProvider IParameterEditorValueProvider null

    An object that implements the IParameterEditorValueProvider interface.

    Returns

    Type Description
    LookUpValueCollection

    A collection of parameter look-up values.

    Example

    The following code example demonstrates how to use the GetLookUpValues method of the LookUpHelper class to access look-up values of a multi-value report parameter. The example also shows how to display the descriptions of the selected parameter values in the report’s XRLabel control.

    using DevExpress.Data.Browsing;
    using DevExpress.XtraReports.Parameters;
    using System;
    // ...
    private void XtraReport1_BeforePrint(object sender, System.ComponentModel.CancelEventArgs e) {
        var valueSourceSettings = this.Parameters["param1"].ValueSourceSettings;
        var dataContext = (sender as IServiceProvider).GetService(typeof(DataContext)) as DataContext;
    
        var lookupValues = LookUpHelper.GetLookUpValues(valueSourceSettings, dataContext);
        var selectedValues = this.Parameters["param1"].Value as Int32[];
    
        var text = "";
    
        int step = 0;
        for (var j = 0; j < lookupValues.Count; j++) {
            if (Array.IndexOf(selectedValues, Convert.ToInt32(lookupValues[j].Value)) > -1) {
                step += 1;
                if (step == selectedValues.Length) {
                    text += lookupValues[j].Description;
                } else {
                    text += lookupValues[j].Description + ", ";
                }
            }
        }
    
        xrLabel1.Text = text;
    }
    
    See Also