Dre*_*kes 536
将它包装在滚动查看器中:
<ScrollViewer>
<TextBlock />
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
注意此答案适用TextBlock于原始问题中要求的(只读文本元素).
如果要在TextBox(可编辑的文本元素)中显示滚动条,请使用ScrollViewer附加的属性:
<TextBox ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Auto" />
Run Code Online (Sandbox Code Playgroud)
对于这两个属性的有效值为Disabled,Auto,Hidden和Visible.
小智 102
现在可以使用以下内容:
<TextBox Name="myTextBox"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.CanContentScroll="True">SOME TEXT
</TextBox>
Run Code Online (Sandbox Code Playgroud)
var*_*wal 20
更好的是:
<Grid Width="Your-specified-value" >
<ScrollViewer>
<TextBlock Width="Auto" TextWrapping="Wrap" />
</ScrollViewer>
</Grid>
Run Code Online (Sandbox Code Playgroud)
这样可以确保文本块中的文本不会溢出并重叠文本块下面的元素,如果不使用网格则可能会出现这种情况.当我尝试其他解决方案时,即使文本块已经在其他元素的网格中,这也发生在我身上.请记住,文本块的宽度应为"自动",您应在Grid元素中指定所需的宽度.我在我的代码中做到了这一点,它的工作非常精彩.HTH.
<ScrollViewer MaxHeight="50"
Width="Auto"
HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto">
<TextBlock Text="{Binding Path=}"
Style="{StaticResource TextStyle_Data}"
TextWrapping="Wrap" />
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
我通过将 MaxHeight 放入 ScrollViewer 以另一种方式执行此操作。
只需调整 MaxHeight 即可显示更多或更少的文本行。简单。
<ScrollViewer Height="239" VerticalScrollBarVisibility="Auto">
<TextBox AcceptsReturn="True" TextWrapping="Wrap" LineHeight="10" />
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
这是在XAML中使用滚动TextBox并将其用作文本区域的方法.