Filter with 3100 rows extremely slow

19 posts, 0 answers
  1. Jeffrey Schultz
    Jeffrey Schultz avatar
    2 posts
    Member since:
    Sep 2009

    Posted 24 Jan 2011 Link to this post

    When you click the filter icon and select criteria, the filter process takes about a minute; is there any way to speed this up since sort operations take a couple of seconds? When the process is completed, even though the criteria I specified exists within the sample set, the RadTreeListView doesn't display any rows. Am I doing something wrong? I can see exactly what I am searching for at the top of the list before I click the filter icon.

    <UserControl.Resources>
            <DataTemplate x:Name="DragCueEquipmentTemplate">
                <telerik:RadDockPanel Margin="2" MaxWidth="200">
                    <TextBlock Text="{Binding ID}" FontWeight="Bold" telerik:RadDockPanel.Dock="Top" />
                    <TextBlock Text="{Binding Name}" Foreground="Green"
                            telerik:RadDockPanel.Dock="Left" />
                </telerik:RadDockPanel>
            </DataTemplate>
        </UserControl.Resources>
     
        <Grid x:Name="LayoutRoot" Background="White" DataContext="EquipmentListViewModel">
     
            <telerik:RadTreeListView x:Name="EquipmentsTreeListView"
                                     AutoGenerateColumns="False" IsDragDropEnabled="True"
                                     IsReadOnly="True" dragDrop:RadDragAndDropManager.AllowDrag="True"
                                     IsDragTooltipEnabled="True" IsDropPreviewLineEnabled="True"
                                     DataLoadMode="Asynchronous" EnableRowVirtualization="True"
                                     ItemsSource="{Binding EquipmentItems}">
     
                <telerik:RadTreeListView.ChildTableDefinitions>
                    <telerik:TreeListViewTableDefinition x:Name="def" ItemsSource="{Binding Children}" />
                </telerik:RadTreeListView.ChildTableDefinitions>
     
                <telerik:RadTreeListView.Columns>
                    <telerik:GridViewDataColumn DataMemberBinding="{Binding equip_item.lin_id}" Header="ID" Width="100" ShowDistinctFilters="False"/>
                    <telerik:GridViewDataColumn DataMemberBinding="{Binding Name}" Header="Name" Width="*" ShowDistinctFilters="False"/>
                </telerik:RadTreeListView.Columns>
     
            </telerik:RadTreeListView>
            <controls:BusyIndicator HorizontalAlignment="Center" VerticalAlignment="Center" 
                                    x:Name="busyIndicator" IsBusy="False" BusyContent="Loading equipment list, please wait..." Grid.Row="0">
            </controls:BusyIndicator>
        </Grid>
  2. Jeffrey Schultz
    Jeffrey Schultz avatar
    2 posts
    Member since:
    Sep 2009

    Posted 24 Jan 2011 Link to this post

    I misstated the number of items. If you count the children, there total about 15000 in all.
  3. DevCraft banner
  4. Pavel Pavlov
    Admin
    Pavel Pavlov avatar
    2039 posts

    Posted 27 Jan 2011 Link to this post

    Hello Jeffrey Schultz,

    Please paste me the implementation of the business objects you are feeding RadTreeListView with.
    I need the one exposing the equip_item.lin_id. I need this as I am trying to build a repro application here to see what is going wrong and provide a fix if applicable.

    Regards, Pavel Pavlov
    the Telerik team
    Let us know about your Windows Phone 7 application built with RadControls and we will help you promote it. Learn more>>
  5. Bennie
    Bennie avatar
    3 posts
    Member since:
    Mar 2007

    Posted 26 Feb 2011 Link to this post

    Hello,

    I have exactly the same problem. I have about 31,000 members in my RadTreeListView, which is a good bit, but not crazy. The filter takes more than a minute. I have a very simple "Employee" collection, where each employee has a "DirectReports" collection for it's sub-items. I am getting a bit desperate, any help is greatly appreciated.

    Bennie
  6. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 02 Mar 2011 Link to this post

    Hello,

     Can you post more info about the version? Is it our latest service pack or our latest internal build? 

    Best wishes,
    Vlad
    the Telerik team
    Registration for Q1 2011 What’s New Webinar Week is now open. Mark your calendar for the week starting March 21st and book your seat for a walk through all the exciting stuff we ship with the new release!
  7. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 09 Mar 2011 Link to this post

    I also have the same problem. I have a RadTreeListView with about 31,000 members and filtering is really slow.
  8. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 09 Mar 2011 Link to this post

    Hello,

     
    Can you post more info about the treelist version? 

    Regards,
    Vlad
    the Telerik team
    Registration for Q1 2011 What’s New Webinar Week is now open. Mark your calendar for the week starting March 21st and book your seat for a walk through all the exciting stuff we ship with the new release!
  9. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 09 Mar 2011 Link to this post

    I'm using version 2010.3.1314.1040
  10. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 15 Mar 2011 Link to this post

    Hello Daní,

     Have you tested your scenario with our Q1 2011 Beta? Can you send us small example project demonstrating your case? 

    Best wishes,
    Vlad
    the Telerik team
    Registration for Q1 2011 What’s New Webinar Week is now open. Mark your calendar for the week starting March 21st and book your seat for a walk through all the exciting stuff we ship with the new release!
  11. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 15 Mar 2011 Link to this post

    Hello Vlad,

    Scenario is the same I uploaded yesterday with the support ticket "Low Performance in Expand All Groups" for the GridViewControl. If you remember the demo application, I have a TileView control inside a RadWindow with four TileViewItems. Each TileViewItem contains a GridView loaded with an items catalog. Well, in fact, in my real scenario, one of this catalogs has a hierichical structure and it's loaded in a TreeListView. I've tried to add a TextBox at top of each GridView/TreeListView to allow user searching items in the catalogs. Via a custom behavior I'm able to add a filter descriptor to the GridView/RadTreeListView each time user enters text on the searcher TextBox. I'm quite sure the issue is related with expanding hierarchy or groups as TreeListView expand all hierarchy each time filter is updated. I've tried to perform filtering for my self, that's updating ItemsSource property with a new collection containing only the items that match the filter criteria and it works fine except if I call ExpandAllHierarchyItems method, then it takes long time to update the UI.

    As I've seen, with new 2011 Q1 release, expanding groups/hierarchy is much faster as control is not trying to expand all item but only those that are potentially visible.
  12. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 17 Mar 2011 Link to this post

    Bad luck,

    With new 2011 Q1 release I'm still having matters Expanding all hierarchy and filtering large datasets. As I saw that AutoExpandAllGroup now performs really fast I hoped that filtering RadTreeListview would behave in the same way. I need a solution, I'm loading more than 30,000 items in a RadTreeListView and calling ExpandAllHierarchy or applying a filter (that also expands all hierarchy) takes long time
  13. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 18 Mar 2011 Link to this post

    Hi Daní,

     We have ideas how to optimize the tree list filtering and we will do our best to provide this in one of our upcoming latest internal builds. 

    Regards,
    Vlad
    the Telerik team
  14. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 18 Mar 2011 Link to this post

    Hello Vlad,

    Thanks for your response. I hope you can provide a solution in short time, if possible next month...
  15. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 27 Apr 2011 Link to this post

    Hello Telerik's team

    Is there any optimization/improvement on treelistview filtering in Q1 Sp1?

    Thanks.
  16. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 29 Apr 2011 Link to this post

    Hi Daní,

     Unfortunately this optimization is still not part of our official releases - hopefully we will provide it in a week or two as internal build. We just want to be sure that the new filtering code will not break any existing scenario. 

    Best wishes,
    Vlad
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  17. Tim Ge
    Tim Ge avatar
    16 posts
    Member since:
    May 2010

    Posted 02 May 2011 Link to this post

    Hello,

    I also have the same problem, as my treelistview is implemented as load on demand
    so is there anyway to let the treelistview only apply the filter
    on the items that already expanded but not trying to expand all my nodes?

    Cheers
  18. Daní
    Daní avatar
    303 posts
    Member since:
    Feb 2008

    Posted 21 Jun 2011 Link to this post

    Hi,

    Any advance on this issue?
  19. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 22 Jun 2011 Link to this post

    Hello,

     Indeed with latest builds you can have load on demand (your child collection can be null however you can set IsExpandable to to true for treelist rows) and the treelist will not attempt to iterate child items if they are not loaded. In this case filtering will be much faster. 

    All the best,
    Vlad
    the Telerik team
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
  20. Matthias
    Matthias avatar
    1 posts
    Member since:
    Mar 2012

    Posted 27 Apr 2012 Link to this post

    Hi,

    I have a similar problem. I have a RadTreeListView that contains data in two "layers". Every time I apply a filter, all rows will be expanded, and because I implemented a load-on-demand, all row details will be loaded which is slow.

    Is it possible to avoid expanding all rows on filtering?

    Kind regards

    Matthias Görner

Back to Top
DevCraft banner