Наложение списка и выделение элементов списка - PullRequest
0 голосов
/ 12 апреля 2019

У меня есть ListView, обернутый в Grid, поверх которого у меня есть оверлей панели ( Как сделать оверлейный элемент управления над всеми другими элементами управления? ). Я хотел бы выделить элемент списка, который находится под, даже если курсор находится не над ним.

enter image description here

Мне бы хотелось, чтобы выделение было таким, когда курсор находится над красным прямоугольником.

enter image description here

<Grid Name="grid">
    <ListView Name="timeSpansListBox" SelectionMode="Extended" HorizontalAlignment="Left" Width="{Binding ElementName=timePanel, Path=ActualWidth}">
      ...
    </ListView>
    <!-- our overlay -->
    <MyPanel Name="timePanel" Panel.ZIndex="999">
      ... items (rectangles you can see on the image)
    </MyPanel>
</Grid>

Как я мог это сделать?

Аналогичная проблема: Как получить контроль с более низким zindex при нажатии мыши в wpf?

Я мог бы установить IsHitTestVisible на false, но мне нужно, чтобы элементы панели оставались активными, поэтому это не вариант.

Если только есть какой-то способ установить IsMouseOver программно ...

1 Ответ

0 голосов
/ 12 апреля 2019

Установите выравнивание по вертикали и горизонтали, чтобы растянуть панель наложения

<MyPanel Name="timePanel" Panel.ZIndex="999"
         HorizontalAlignment="Stretch" 
         VerticalAlignment="Stretch">
    ... items (rectangles you can see on the image)
</MyPanel>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...