dotnet / DataGridExtensions

Modular extensions for the WPF DataGrid control
MIT License
811 stars 103 forks source link

Filtering multiple columns, previous filters will fail #67

Closed BigBirdBoom closed 3 years ago

BigBirdBoom commented 3 years ago

Hello Something strange happened when I ran the sample (DataGridExtensionsSample) you provided. Here are the steps I took.

Step 1 : Reset all filters on this page.

Step1

Step 2 : Uncheck the second and fourth items in the fifth column

Step2

Step 3 : Check the "i" and "p" in the ninth column

Step3

Step 4 : Uncheck "3" in the eighth column

Step4

After that, the previously filtered columns become unfiltered. Thank you!

shengjhen commented 3 years ago

I have similar issue with that. 1.Filtered all column at current screen.-->OK. 2.Try sort each column at current screen.-->OK. 3.Scroll the Horizontal Scroller to right until first column can't see. 4.Sorting new column would cause filter failed.-->Fail.

tom-englert commented 3 years ago

@BigBirdBoom maybe that's because most of the grid columns are showing/filtering the same data columns with conflicting filters? @shengjhen that I can't reproduce

shengjhen commented 3 years ago

@BigBirdBoom maybe that's because most of the grid columns are showing/filtering the same data columns with conflicting filters? @shengjhen that I can't reproduce Sorry,please accept my apologies,the problem came from my project,not from example. DataGrid's property like below

1.Testing is ok for everything

VirtualizingPanel.IsVirtualizing="True" VirtualizingPanela.ScrollUnit="Pixel" VirtualizingPanel.IsVirtualizingWhenGrouping="True" VirtualizingPanel.IsContainerVirtualizable="True" VirtualizingPanel.CacheLengthUnit="Pixel" VirtualizingPanel.VirtualizationMode="Recycling" EnableRowVirtualization="True" EnableColumnVirtualization="False"

2.Filters will be failed when the filtered columns are invisible(Because scroll to right) and click visible column to sort.

VirtualizingPanel.IsVirtualizing="True" VirtualizingPanela.ScrollUnit="Pixel" VirtualizingPanel.IsVirtualizingWhenGrouping="True" VirtualizingPanel.IsContainerVirtualizable="True" VirtualizingPanel.CacheLengthUnit="Pixel" VirtualizingPanel.VirtualizationMode="Recycling" EnableRowVirtualization="True" EnableColumnVirtualization="True"

tom-englert commented 3 years ago

@shengjhen That should have been fixed already here: #23. Are you using the latest version? If yes, can you provide a repo sample, preferably as a PR for the sample application

shengjhen commented 3 years ago

@shengjhen That should have been fixed already here: #23. Are you using the latest version? If yes, can you provide a repo sample, preferably as a PR for the sample application

Yes.I use the latest version. image Same issue when i try use the sample which provide from this repo.

UlI2zpvC9V

image

tom-englert commented 3 years ago

OK, now I found it. Since this seems to be something different than the original issue, I moved this to #68

tom-englert commented 3 years ago

Looks like the fix for #68 also fixed this.