mirror of https://github.com/icsharpcode/ILSpy.git
Browse Source
SharpTreeView is a ListBox with AutoScrollToSelectedItem left at its default (true), so it chased the selected row whenever its index shifted: expanding an unrelated node pushed the selection off-screen and the ListBox yanked the viewport back to it, fighting the expand's own reveal -- the "weird scrolling". The rule is that a user mutating a control directly should not have the app mutate the view too; only navigation from a *different* control (search results, code/metadata links, analyzer nodes, Back/forward) may sync the tree. The app already does that sync explicitly through the model (TreeSelectionBinder -> CenterNodeInView), so the ListBox's own auto-scroll is redundant and wrong for in-tree actions. Disable it. Assisted-by: Claude:claude-opus-4-8:Claude Codepull/3755/head
2 changed files with 62 additions and 0 deletions
Loading…
Reference in new issue