Skip to content

TreeView scrolling is not working when virtualization is not enabled. #550

@Korjam

Description

@Korjam

Describe the bug

TreeView scrolling is not working when virtualization is not enabled.

To Reproduce

  1. Create a TreeView containing at least one item with many child items
  2. Expand the the item with many childs
  3. Reduce the window size until the scroll control appears
  4. Scroll down.

Following this steps it scroll the entire list of childs from the item 1 and goes directly to the second item.

<TreeView>
  <TreeViewItem Header="Item 1">
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
    <TreeViewItem Header="Child" />
  </TreeViewItem>
  <TreeViewItem  Header="Item 2" />
</TreeView>

Expected behavior

An stepped scroll where you can see all the child items.

A workarround for this issue is to enable virtualization in TreeView:

VirtualizingPanel.IsVirtualizing="True"

Screenshots

image
image

OS version

Windows 11

.NET version

.NET 7

WPF-UI NuGet version

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcontrolsChanges to the appearance or logic of custom controls.locked-due-to-inactivity

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions