Wpf 文本块换行和滚动视图

Wpf 文本块换行和滚动视图,wpf,scrollview,textblock,Wpf,Scrollview,Textblock,下面的代码运行良好,但垂直滚动条被禁用,即使TextBlock中有大文本。我如何启用它 <UserControl.DataContext> <viewModels:CommentsViewModel/> </UserControl.DataContext> <Grid> <DockPanel > <TreeView DockPanel.Dock="Top"/

下面的代码运行良好,但垂直
滚动条
被禁用,即使
TextBlock
中有大文本。我如何启用它

 <UserControl.DataContext>
        <viewModels:CommentsViewModel/>
    </UserControl.DataContext>
    <Grid>
        <DockPanel >
            <TreeView DockPanel.Dock="Top"/>
            <Expander Header="Yo" DockPanel.Dock="Bottom" VerticalAlignment="Bottom">
                <ScrollViewer HorizontalScrollBarVisibility="Disabled">
                    <TextBlock TextWrapping="Wrap"  MaxHeight="250" 
                         Text="{Binding Article.Article.Content}"/>
                </ScrollViewer>
            </Expander>
        </DockPanel>
    </Grid>

如果您只显示文本,请使用
文本框

        <Expander Header="Yo" DockPanel.Dock="Bottom" VerticalAlignment="Bottom">
            <Grid IsReadOnly="True">
                <TextBox TextWrapping="Wrap"  MaxHeight="250" 
                     Text="{Binding Article.Article.Content}"/>
            </Grid>
        </Expander>

我找到了

MaxHeight="250" 
标签不应位于
文本块中,而应位于
网格中,以限制高度。然后它就会完美地工作

<UserControl.DataContext>
    <viewModels:CommentsViewModel/>
</UserControl.DataContext>
<Grid>
    <DockPanel >
        <TreeView DockPanel.Dock="Top"/>
        <Expander Header="Yo" DockPanel.Dock="Bottom" VerticalAlignment="Bottom">
            <Grid MaxHeight="250"> 
            <ScrollViewer HorizontalScrollBarVisibility="Disabled">
                <TextBlock TextWrapping="Wrap"   
                     Text="{Binding Article.Article.Content}"/>
            </ScrollViewer>
            </Grid>
        </Expander>
    </DockPanel>
</Grid>


我认为文本框控件可以自动处理滚动,如果您想尝试,您需要ScrollViewer的具体原因是什么?请尝试设置VerticalScrollBarVisibility=“Visable”。并且不应将MaxHeight设置为TextBlock。