Ваш сценарий пользовательского интерфейса звучит немного странно для меня, но если вы все еще хотите реализовать его, вы можете сделать следующее. Вы не получите событие для парена, потому что ItemsControl помечает его как обработанное, поэтому он не направляется дальше . Вы можете подписаться на событие PreviewMouseDown вместо MouseDown в родительском элементе. Тогда независимо от того, что родитель получит уведомление, прежде чем его дети.
UPDATE
Вы можете сделать следующее
<ScrollViewer>
<Grid MouseDown="HandleMouseDown">
<TextBlock />
<ItemsControl IsHitTestVisible="false"/>
</Grid>
</ScrollViewer>
Таким образом, у вас будет свиток для текстового блока и для элементов. Полосы прокрутки ItemsControl не будут использоваться.
ОБНОВЛЕНИЕ 2
Если вы хотите иметь отдельные ScrollViewers, то другая возможность может быть следующей (хотя я думаю, что некоторые границы и сетки действительно не нужны. Только если они функциональны в вашем фрагменте)
<Grid>
<Border>
<ScrollViewer>
<TextBlock MouseDown="HandleMouseDown">
</ScrollViewer>
<Border>
<Border>
<Grid>
<ScrollViewer>
<Grid MouseDown="HandleMouseDown">
<ItemsControl IsHitTestVisible="false"/>
</Grid>
</ScrollViewer>
</Grid>
<Border>
</Grid>