Сетка выборочной прокрутки WPF

Привет, у меня есть StackPanel в ScrollViewer, в котором размещено несколько сеток, однако я бы хотел, чтобы Grid1 оставался фиксированным во время вертикальной прокрутки и прокручивался вместе с остальными сетками во время горизонтальной прокрутки. Grid2, Grid3, ..., GridN должны иметь возможность прокручивать как по вертикали, так и по горизонтали в соответствии с элементом управления ScrollViewer. Я пробовал использовать SelectiveScrollingGrid.SelectiveScrollingOrientation, однако это, похоже, не работает при запуске и работает (отчасти), только если я изменяю ориентацию в XAML во время выполнения. Мой код:

    <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
        <StackPanel Name="GridsStack">
            <StackPanel.LayoutTransform>
                <ScaleTransform ScaleX="{Binding ElementName=Zoom, Path=Value}" ScaleY="{Binding ElementName=Zoom, Path=Value}"/>
            </StackPanel.LayoutTransform>
            <Grid VerticalAlignment="Top" Margin="70 0 0 0" Name="Grid1" SelectiveScrollingGrid.SelectiveScrollingOrientation="Horizontal" Panel.ZIndex="150">
                <Grid.RowDefinitions>
                    <RowDefinition Height="45"/>
                    <RowDefinition Height="30"/>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="85"/>
                    <ColumnDefinition Width="85"/>
                    <ColumnDefinition Width="85"/>
                    <ColumnDefinition Width="85"/>
                </Grid.ColumnDefinitions>
            </Grid>

            <Grid Name="Grid2">
                     <!--code-->
            </Grid>

            <Grid Name="Grid3">
                     <!--code-->
            </Grid>

            <Grid Name="Grid4">
                     <!--code-->
            </Grid>

            <Grid Name="GridN">
                     <!--code-->
            </Grid>
        </StackPanel>
    </ScrollViewer>

Panel.ZIndex гарантирует, что Grid1 всегда остается наверху во время вертикальной прокрутки. Дайте мне знать, если я что-то пропустил или делаю неправильно.

Благодарю.

0 ответов

Другие вопросы по тегам