WPF, полоса прокрутки Thumb отображается в обратном направлении

Я следовал руководству по созданию шаблона полосы прокрутки с этого сайта: http://sachabarber.net/?p=122 < / а>

Но по какой-то причине элемент управления Thumb находится в обратном направлении, когда содержимое средства просмотра прокрутки находится вверху, большой палец как внизу, когда я нажимаю нижнюю кнопку повтора, содержимое в средстве просмотра прокрутки прокручивается правильно, однако большой палец идет вверх . и наоборот, когда я нажимаю верхнюю кнопку повтора, большой палец опускается.

Не уверен, что я сделал для этого ... Когда я удаляю созданный мной шаблон элемента управления, он возвращается к стилю по умолчанию, а ползунок размещается правильно.

Ниже приведен код шаблона элемента управления. У меня есть этот шаблон, связанный с элементом управления Scrollbar, и все отображается нормально, кроме большого пальца.

<ControlTemplate x:Key="kd_VertScrollBar" TargetType="{x:Type ScrollBar}">
                <Grid Width="15">
                    <Grid.RowDefinitions>
                        <RowDefinition MaxHeight="25"/>
                        <RowDefinition Height=".00001*"/>
                        <RowDefinition MaxHeight="25"/>
                    </Grid.RowDefinitions>

                    <Border Grid.RowSpan="3" CornerRadius="2" Background="#CCCCCCCC" /> 

                    <RepeatButton Grid.Row="0"
                        Background="Aqua"
                        Height="25"
                        ContentTemplate="{StaticResource RepeatButtonImage}"
                        Command="ScrollBar.LineUpCommand" />

                    <Track Grid.Row="1">
                        <Track.DecreaseRepeatButton>
                            <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageUpCommand" />
                        </Track.DecreaseRepeatButton>

                        <Track.Thumb>
                            <Thumb Style="{StaticResource ScrollBarThumb}" Background="Blue" BorderBrush="Black" />
                        </Track.Thumb>

                        <Track.IncreaseRepeatButton>
                            <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageDownCommand" />
                        </Track.IncreaseRepeatButton>
                    </Track>

                    <RepeatButton x:Name="ToBottom" Grid.Row="2"
                        Background="Aqua"
                        Height="25"
                        ContentTemplate="{StaticResource RepeatButtonImage}"
                        Command="ScrollBar.LineDownCommand" />

                </Grid>
            </ControlTemplate>

Любая помощь будет принята с благодарностью


person kdub    schedule 01.08.2011    source источник
comment
Как насчет ‹Track Grid.Row = 1 IsDirectionReversed = true›?   -  person Dave Clemmer    schedule 02.08.2011


Ответы (1)


Вы должны установить для IsDirectionReversed значение true на Track, что и делают шаблоны по умолчанию.

person Julien Lebosquain    schedule 01.08.2011