Unplanned
Last Updated: 14 Sep 2021 16:00 by ADMIN
Korstiaan
Created on: 02 Aug 2021 12:44
Category: Grid
Type: Feature Request
3
Allow using Filter Row with Column Menu

Greetings!

I've been waiting for a few months now to swap to blazor, but one of the things that's currently holding us back is that the filter row can't be used together with the column menu.
I've always found this to be strange, since it's supported in the Angular and MVC versions, which we currently use.
Our users never filter via the column menu, always via the filter row. They hide/lock their columns via the column menu and sometimes sort.
This functionality is thus critical for us.

I can't find any feature request for it, nor any planned roadmap item.
Will this ever be supported because if not, we're gonna have to start looking for alternatives.

Kind regards.

4 comments
ADMIN
Nadezhda Tacheva
Posted on: 14 Sep 2021 16:00

Hi Korstiaan,

Having in mind the different essence of the Angular/Jquery and Blazor, the implementation of the components and features for the corresponding suites is also distinct. So, some differences may be observed in the behavior of the various components, as for example in this case. In the Blazor Grid, both of the filter modes use separate descriptors at this stage.

As mentioned in my previous post, one of the options we are considering is unifying the filter descriptors, so both Filter Menu and Filter Row use CompositeFilterDescriptor.

That being said, thank you for providing detailed feedback on your expectations for this feature. It is valuable and will be taken into consideration once the discussions for its implementation are initiated.

Regards,
Nadezhda Tacheva
Progress Telerik

Love the Telerik and Kendo UI products and believe more people should try them? Invite a fellow developer to become a Progress customer and each of you can get a $50 Amazon gift voucher.

Korstiaan
Posted on: 09 Sep 2021 06:58

That's what I don't get about the implementation in Blazor.
In Jquery and Angular, every column implicitly used a CompositeFilterDescriptor.
If you added filters via the column menu, the filter row just gets mapped to the first FilterDescriptor of the CompositeFilterDescriptor.

Let's say we used the column menu and used only the second filter, leaving the top one empty.
The Angular/Jquery code would notice that the first one is empty and remove it when it didn't make a lot of sense, given the selected filter method (i.e. contains '' would be removed). The second filter then becomes the first, which gets mapped to the filterrow.
Also, when you then get the filters the grid is using (e.g. $(".k-grid").data("kendoGrid").dataSource.filter()), it would simplify all these CompositeFilterDescriptors to simple FilterDescriptors when applicable. 
For example, when you had the filters ([Column X] > 5 AND [Column X] < 10) AND ([Column Y] = 'T') with (...) marking the start and end of a CompositeFilterDescriptor, the service would be smart enough to simplify the first CompositeFilterDescriptor for [Column X], since both its FilterDescriptors can just be added to the top level CompositeFilterDescriptor, since they all use an "AND" condition.

Would love to have seen what is going on under the hood for blazor, but unfortunately the source code isn't public (yet).

ADMIN
Nadezhda Tacheva
Posted on: 30 Aug 2021 08:25

Hello Korstiaan,

By design of the Grid for Blazor, its Filter menu uses CompositeFilterDescriptors, while its Filter Row uses FilterDescriptors. Since the filter descriptors of the two modes are different they cannot work together and thus the Column menu which provides Filter menu option is not compatible with Filter Row.

As I consider allowing compatibility of Filter Row with Column menu a reasonable feature request, I raised a discussion with the development team to revise what would be the options for such implementation. At this stage we are considering a couple of approaches as follows:

  • Support Column Menu without Filter Menu but with Filter Row. The main goal here is to avoid having two filter types because the conflict comes from the different filter descriptors they use.

  • Configure the Filter Row mode to also use CompositeFilterDescriptor. Such an option would be a breaking change.

Feel free to share your thoughts on how you would expect this functionality to behave. It will be very helpful for us to see the vision of our community for possible implementation.

In the meantime, I added your vote to increase the popularity of the request as we are prioritizing the feature requests implementation based on the community interest and demand. As you are the creator of the post, you are subscribed and will receive email notifications when its status changes. This is the best way to keep in track with the progress of the feature as once we know which release will contain its implementation, we will update its status in the feedback portal and you will be notified via email accordingly.

I hope you will find the above information useful. If any further questions appear, please let us know.

Regards,
Nadezhda Tacheva
Progress Telerik

Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

Korstiaan
Posted on: 23 Aug 2021 09:08
Would anyone be so kind to explain why blazor filter functionality differs from the other Telerik/Progress products?
I don't get why this wasn't implemented from the start.
Was/Is it because of blazor limitations?