Это происходит потому, что шаблон содержимого ListView
(на самом деле ListBox
) оборачивает свои элементы самим ScrollViewer
.
Самый простой способ - отключить его, отбросивсобственный Template
для внутреннего ListView
, тот, который не создает ScrollViewer
:
<ListView>
<ListView.Template>
<ControlTemplate>
<ItemsPresenter></ItemsPresenter>
</ControlTemplate>
</ListView.Template>
...
</ListView>
Кстати, то же самое происходит, если у вас есть ListView внутри ListView (это был мой случай).