Не работает скроллинг в структуре ListView/Expander/ListView

Имеется фильтр состоящий из ListView в котором много Expander'ов. Внутри некоторых из них тоже есть ListView в которые выводятся коллекции через привязку. Проблема в том, что при наведении курсора на внутренние ListView перестаёт скролиться главный ListView. Работает скролбар, работают стрелки на клавиатуре, но только не колесико мыши. Думал о замене внутренних ListView на другие элементы, в которых можно хранить коллекции, однако ничего дельного из этого не вышло, видимо проблема не в этом. Вот фрагмент кода:

<!--Внешний (главный) ListView-->
<ListView Grid.Row="1"
                      ItemsSource="{Binding FilterList}" 
                      VirtualizingPanel.ScrollUnit="Pixel"
                      ScrollViewer.HorizontalScrollBarVisibility="Disabled"
                      BorderThickness="1">

    <!--Стиль для отключения выделения при наведении на элементы ListView-->
    <ListView.ItemContainerStyle>
        <Style TargetType="{x:Type ListViewItem}">
            <Setter Property="Background" Value="Transparent" />
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type ListViewItem}">
                        <ContentPresenter/>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </ListView.ItemContainerStyle>

    <ListBox.Resources>
        <local:ActualConverter x:Key="ActualConverter"/>

        <DataTemplate x:Key="SelectiveFilterTemplate">

            <!--Внутренний ListView внутри Expander-->
            <ListView ItemsSource="{Binding Items}" 
                                 HorizontalAlignment="Left"
                                 Margin="29,10,0,0"
                                 Width="165">

                <!--Стиль для отключения выделения при наведении на элементы внутренних ListView-->
                <ListView.ItemContainerStyle>
                    <Style TargetType="{x:Type ListViewItem}">
                        <Setter Property="Background" Value="Transparent" />
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="{x:Type ListViewItem}">
                                    <ContentPresenter />
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </ListView.ItemContainerStyle>

                <ListView.ItemTemplate>
                    <DataTemplate>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition/>
                                <ColumnDefinition/>
                            </Grid.ColumnDefinitions>

                            <CheckBox Grid.Column="0" 
                                                  IsChecked="{Binding CheckedItem}" 
                                                  IsEnabled="{Binding EnabledItem}"
                                                  Margin="4,2,0,2"/>
                            <TextBlock Grid.Column="1" 
                                                   Text="{Binding LinkedItem.Name}"
                                                   TextWrapping="Wrap"
                                                   Width="135"
                                                   Margin="4,2,0,2">
                                <TextBlock.Style>
                                    <Style TargetType="TextBlock">
                                        <Style.Triggers>
                                            <DataTrigger Binding="{Binding EnabledItem}" 
                                                                     Value="False">
                                                <Setter Property="Foreground" 
                                                                    Value="Gray" />
                                            </DataTrigger>
                                        </Style.Triggers>
                                    </Style>
                                </TextBlock.Style>
                            </TextBlock>
                        </Grid>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </DataTemplate>

        <!--Отдельная реализация Expander-->
        <DataTemplate DataType="{x:Type local:VMInparSelectiveFilter}">
            <Expander IsExpanded="True" 
                                  Content="{Binding}" 
                                  ContentTemplate="{StaticResource SelectiveFilterTemplate}" 
                                  Margin="4,5,0,5">
                <Expander.Header>
                    <TextBlock Text="{Binding LinkedInpar.Name}" 
                                           FontSize="14" 
                                           Margin="5,0,0,0" 
                                           TextWrapping="Wrap" 
                                           Width="220"/>
                </Expander.Header>
            </Expander>
        </DataTemplate>
        
        <!--Далее идут остальные шаблоны -->

    </ListBox.Resources>
</ListView>

Вот как это выглядит: скрин интерфейса

Подскажите, пожалуйста, как можно решить эту проблему? Или есть обходные пути?


Ответы (0 шт):