2

垂直スクロールが表示されるように多くのアイテムを含むリストボックスがあるとしましょうが、スクロールバーを非表示にしました

ScrollViewer.VerticalScrollBarVisibility="Hidden"

下にスクロールするボタンを追加する方法はありますか? iv追加しようとしました

Command="ScrollBar.LineDownCommand" 

ボタンに移動しましたが、効果はありませんでした。

4

2 に答える 2

4

コマンド ハンドラーの検索を開始する場所を WPF に指示する必要があります。何も言わずに から検索を開始し、Buttonを処理するものを見つけられませんLineDownCommand。残念ながら、はテンプレートの一部として のにあるため、 に設定してListBoxも十分ではありません。そのため、WPF はまだそれを見つけられません。ScrollViewerListBox

s のいずれかに設定するListBoxItemのは面倒ですが、機能します。

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>

        <ListBox x:Name="_listBox" ScrollViewer.VerticalScrollBarVisibility="Hidden">
            <ListBoxItem x:Name="_listBoxItem">One</ListBoxItem>
            <ListBoxItem>Two</ListBoxItem>
            <ListBoxItem>Three</ListBoxItem>
            <ListBoxItem>One</ListBoxItem>
            <ListBoxItem>Two</ListBoxItem>
            <ListBoxItem>Three</ListBoxItem>
            <ListBoxItem>One</ListBoxItem>
            <ListBoxItem>Two</ListBoxItem>
            <ListBoxItem>Three</ListBoxItem>
            <ListBoxItem>One</ListBoxItem>
            <ListBoxItem>Two</ListBoxItem>
            <ListBoxItem>Three</ListBoxItem>
        </ListBox>
        <Button Grid.Row="1" Command="ScrollBar.LineDownCommand" CommandTarget="{Binding ElementName=_listBoxItem}">Scroll Down</Button>
    </Grid>
</Window>

これを行うためのより良い方法は、 を再テンプレート化してテンプレート内にListBox貼り付けるか、コード ビハインドで を接続することです。ButtonCommandTarget

于 2009-03-16T12:26:31.027 に答える
0

ScrollViewer のスクロールを手動で制御したいアプリがありました。基本的に、ScrollViewer への参照を取得し、ScrollToHorizo​​ntalOffset() メソッドを使用してスクロールを制御しました。以下は、私が使用したプロセスを説明するブログ投稿です。

http://www.developingfor.net/wpf/fun-with-the-wpf-scrollviewer.html

http://www.developingfor.net/wpf/more-fun-with-wpf-scrollviewer.html

于 2009-03-17T20:45:22.530 に答える