Nathan
Nathan

Reputation: 131

WPF ScrollView and TextBlock

What am I doing wrong?

The following code works:

<ScrollViewer x:Name="scrollChatMessages">
    <TextBlock x:Name="txtChatMessages" TextWrapping="Wrap"/>
</ScrollViewer>

But once I touch it up with the designer so it looks neater and doesn't take over the entire Grid, the ScrollView doesn't scroll the content of the Scrollblock anymore:

<ScrollViewer x:Name="scrollChatMessages" HorizontalAlignment="Left" Height="181" Margin="95,10,0,0" VerticalAlignment="Top" Width="300">
    <TextBlock x:Name="txtChatMessages" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Top" Height="181" Width="300"/>
</ScrollViewer>

Could someone explain this behaviour to me?

Thanks in advance!

Upvotes: 1

Views: 1192

Answers (2)

Peter Duniho
Peter Duniho

Reputation: 70661

Without a good Minimal, Complete, and Verifiable code example it's impossible to say for sure. But you can see that the Designer has added a bunch of new property values for both elements. In particular, the ScrollViewer and TextBlock have been set to have the same exact width and height.

Naturally, with the contained element having exactly the correct dimensions to fit within the ScrollViewer, there's no need to scroll to see all of it. You need to remove the Width and Height property values from the TextBlock.

Upvotes: 1

Nathan
Nathan

Reputation: 131

I solved it by placing it inside of a Grid.

<Grid x:Name="gridChatMessages" HorizontalAlignment="Left" Height="181" Margin="95,10,0,0" VerticalAlignment="Top" Width="300">
    <ScrollViewer x:Name="scrollChatMessages">
        <TextBlock x:Name="txtChatMessages" TextWrapping="Wrap"/>
    </ScrollViewer>
</Grid>

Upvotes: 1

Related Questions