The requested page is not available for the requested platform. You are viewing the content for Default platform.

ASPxClientWebDocumentViewer.CustomizeParameterLookUpSource Event

Occurs each time a look-up editor is created for a report parameter.

Namespace: DevExpress.XtraReports.Web.Scripts

Assembly: DevExpress.XtraReports.v18.2.Web.Scripts.dll

Declaration

public event ASPxClientWebDocumentViewerCustomizeParameterLookUpSourceEventHandler CustomizeParameterLookUpSource
Public Event CustomizeParameterLookUpSource As ASPxClientWebDocumentViewerCustomizeParameterLookUpSourceEventHandler

Event Data

The CustomizeParameterLookUpSource event handler receives an argument of the ASPxClientCustomizeParameterLookUpSourceEventArgs type. The following properties provide information specific to this event.

Property Description
dataSource Specifies the data source that provides look-up values for the parameter editor.
items Provides access to the collection of look-up parameter values.
parameter Provides access to an object that stores information about a parameter.

Remarks

Handle the CustomizeParameterLookUpSource event to customize look-up parameter values.

The following example demonstrates how to sort look-up values of the categoryName parameter based on a custom rule. Declare an array that has category names in a sequence based on the required criterion. Then, check the parameter property of the event argument to identify the required parameter. Access look-up values using the items property and sort them using a custom sorting function, which compares indexes of categories in the array. Finally, pass a result to the dataSource property to apply changes.

<dx:AspxWebDocumentViewer ID="AspxWebDocumentViewer1" runat="server">
    <ClientSideEvents CustomizeParameterLookUpSource="function(s, e) {
        var sortRule = ['Produce', 'Meat/Poultry', 'Dairy Products',
            'Grains/Cereals', 'Seafood', 'Confections', 'Condiments', 'Beverages'];

        if(e.parameter.name == 'categoryName') {
            e.items.sort(function(a, b) { 
                if (sortRule.indexOf(a.value) > sortRule.indexOf(b.value)) {
                    return 1;
                }
                if (sortRule.indexOf(a.value) < sortRule.indexOf(b.value)) {
                    return -1;
                }
                return 0;
            });
            e.dataSource = new DevExpress.data.DataSource({ store: e.items});
        }
    }"/>
</dx:AspxWebDocumentViewer>
See Also