0

私のListBox私は、テキストを含むさまざまなコンテンツを表示します。テキストは長くても短くてもかまいません。でスクロールしScrollViewerます。コード:

<ScrollViewer MaxHeight="300" VerticalAlignment="Top" Grid.Column="1" Grid.Row="1" >
    <TextBlock Style="{StaticResource TextsTextBlock}" Text="{Binding Texts}"  Grid.Column="1" Grid.Row="1" />
</ScrollViewer>

また、テキストが短く、このテキストの高さが に達しない場合にも機能しMaxHeightますScrollViewer。テキストが長く、高さが'sScrollViewerより大きい場合にのみ機能させたいのですが、それ以外の場合は機能する必要はありません。ScrollViewerMaxHeight

試したボーダー

<Border  BorderBrush="Aqua"  BorderThickness="2" MaxHeight="300" VerticalAlignment="Top" Grid.Column="1" Grid.Row="1">
 <ScrollViewer VerticalAlignment="Top" VerticalScrollBarVisibility="Auto" >
 <TextBlock Style="{StaticResource TextsTextBlock}" Text="{Binding Texts}"  Grid.Column="1" Grid.Row="1" />
 </ScrollViewer>
 </Border>

しかし、それはまだこの境界でスクロールしています。

4

2 に答える 2

0

Grid.内部コントロールからいくつかのプロパティを削除してみてください

<Border BorderBrush="Aqua" BorderThickness="2" MaxHeight="300" VerticalAlignment="Top" Grid.Column="1" Grid.Row="1">       
    <ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" >
        <TextBlock Text="text" TextWrapping="Wrap"/>
    </ScrollViewer>
</Border>

これは1行のテキストで正常に機能します

コードをコピーして貼り付けると正常に機能します

ここに画像の説明を入力してください

于 2012-12-24T01:27:13.210 に答える
0

VerticalScrollBarVisibilityプロパティを に設定しますAuto

デフォルト値は ですVisible。これは、スクロール バーが常に表示されることを意味します。

対照的に、HorizontalScrollBarVisibilityプロパティのデフォルト値はHiddenです。

于 2012-12-24T00:36:42.877 に答える