We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

How to disable Filter-as-you-type in SfDropDownList for Blazor WASM

How can I disable filtering while the user types as it is making the dropdown search really laggy and unresponsive?
Is there any way to do the filtering only when the user presses 'enter'?


4 Replies 1 reply marked as answer

SP Sureshkumar P Syncfusion Team March 23, 2023 10:58 AM UTC

Hi Faiyaz,

Based on your shared information, we suggest you use our virtualization feature to achieve your requirement. This will load the data on demand so this feature will improve your application performance. To know more about the virtualization, please refer to the below documentation and online demo.

Documentation: https://blazor.syncfusion.com/documentation/dropdown-list/virtualization

Online demo link: https://blazor.syncfusion.com/demos/dropdown-list/virtualization?theme=bootstrap5

If we misunderstood your requirement, please explain your exact use case with any image or video demonstration. These details will help us to provide an exact solution as earlier as possible.

Regards,

Sureshkumar P



FA Faiyaz March 26, 2023 11:08 AM UTC

nfortunately, virtualization feature is already in use. However, it is still unresponsive.
When typing, there is a delay of 2-5 seconds for each character as the screen freezes during loading which makes the search kind of unusable.







Capture.PNG



SP Sureshkumar P Syncfusion Team March 27, 2023 10:21 AM UTC

Faiyaz,

We suspect that the sample-level multiple queries replicate the reported issue in your application. We suggest you use the predicate to resolve the issue.

Please find the modified filtering code

private async Task OnFilterPatient(FilteringEventArgs args)

    {

        args.PreventDefaultAction = true;

        var Col1Pre = new WhereFilter();

        var predicate = new List<WhereFilter>();

        predicate.Add(new WhereFilter() { Condition = "or", Field = "PatientName", value = args.Text, Operator = "contains", IgnoreCase = true });

        predicate.Add(new WhereFilter() { Condition = "or", Field = "NRIC", value = args.Text, Operator = "startswith", IgnoreCase = true });

        Col1Pre = WhereFilter.Or(predicate);

        var query = new Query().Where(Col1Pre);

        await ddlPatientObj.FilterAsync(PatientServiceClient, query);

    }

If still, you have faced the same issue, then please provide detailed information with the sample to replicate the issue from our end to update an exact solution as earlier as possible.


Marked as answer

FA Faiyaz replied to Sureshkumar P March 29, 2023 05:03 PM UTC

There was a noticeable performance improvement. The dropdown search is usable now. Thank you!


Loader.
Live Chat Icon For mobile
Up arrow icon