2011-04-12 11 views
2

J'ai une application wpf. Dans la fenêtre j'ai un TextBlock qui contient beaucoup de nombres, chaque nombre dans sa rangée. Je veux que le scrollViewer apparaisse en cas de besoin. Il ne fonctionne pas ... voici le codeScrollViewer wpf - ne fonctionne pas

<ScrollViewer CanContentScroll="True" Margin="5,25,5,0" Grid.Row="2" HorizontalScrollBarVisibility="Auto" > 
       <TextBlock MaxHeight="500" Height="Auto" Width="Auto" VerticalAlignment="Top" Name="TextBlock_Results"/> 
     </ScrollViewer> 
+0

est-il pas une barre de défilement vertical que vous avez besoin? –

+4

"Ne fonctionne pas" n'est pas une description d'erreur. Décrivez ce qui se passe et ce que vous voulez qu'il fasse. –

+0

"Ne fonctionne pas" - signifie que le scrollviewer ne fonctionne pas comme il le devrait, il y a un défilement sur le côté gauche, mais je ne peux pas faire défiler vers le bas pour voir les éléments. –

Répondre

1

Le bloc de texte dans la visionneuse de défilement n'est pas capable de faire défiler par défaut. Pour permettre au ScrollViewer d'effectuer un défilement basé sur des pixels, vous devez définir le défilement du contenu de la boîte sur false.

La visibillité des deux barres de défilement est contrôlée indépendamment. J'ai caché la barre de défilement verticale dans le soufflet.

<Window x:Class="WpfApplication1.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="350" Width="525"> 
<Grid> 
    <ScrollViewer CanContentScroll="False" Margin="5,25,5,0" Grid.Row="2" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Hidden"> 
     <TextBlock MaxHeight="500" Height="Auto" Width="Auto" VerticalAlignment="Top" Name="TextBlock_Results" 
        Text="a"/> 
    </ScrollViewer> 

</Grid>