Ok, I found out how you can do it easy...
Disable the listview while you are not in it..
Enable := False;
This will pass all mouse messages through it to the scrollbox
when you click on it, it will actually go to the scroll box but this is where you can then determine to enable it again by testing the area of the scroll box you clicked to see if the list view lives there.
when you move your mouse outside the list box the OnExit can be used to disable it again...
of course every time you do this you will need to click twice to re-enable the Listview …
procedure TForm1.ScrollBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ListView1.Enabled := PtInRect(ListView1.BoundsRect,Point(X,Y));
end;
procedure TForm1.ListView1Exit(Sender: TObject);
begin
ListView1.Enabled := False;
end;