我尝试在TextBlock
内放置一个ScrollViewer
,滚动条显示正确,但我似乎无法在Text
TextBlock
属性时自动向下滚动{1}}已更新。这是XAML的相关部分:
<ScrollViewer>
<TextBlock FontFamily="Consolas"
Text="{Binding Current.Current.Discussion}"
TextWrapping="Wrap" />
</ScrollViewer>
非常感谢帮助,谢谢!
答案 0 :(得分:4)
默认情况下,您获得的行为是滚动条将调整为文本块中的文本量,但查看器将显示文本的顶部。要正确刷新,请执行以下操作:
scrollViewer.UpdateLayout();
scrollViewer.ScrollToVerticalOffset(txtBlock.ActualHeight);
答案 1 :(得分:0)
收听文字更改事件
textBlock.TextChanged += (o, args) => ScrollTextBoxToBotton();
滚动到底部的实际功能:
private void ScrollTextBoxToBotton()
{
scrollViewer.UpdateLayout();
scrollViewer.ScrollToVerticalOffset(double.MaxValue);
}