Make sure TreeView gets redrawn after calling EnsureVisible.
diff --git a/dlls/comctl32/treeview.c b/dlls/comctl32/treeview.c index c8c929e..69edf2a 100644 --- a/dlls/comctl32/treeview.c +++ b/dlls/comctl32/treeview.c
@@ -4436,8 +4436,7 @@ SetScrollPos(infoPtr->hwnd, SB_VERT, newFirstVisible->visibleOrder, TRUE); - ScrollWindow(infoPtr->hwnd, 0, scroll, NULL, NULL); - UpdateWindow(infoPtr->hwnd); + ScrollWindowEx(infoPtr->hwnd, 0, scroll, NULL, NULL, NULL, NULL, SW_ERASE | SW_INVALIDATE); } } }