【发布时间】:2014-11-03 00:24:06
【问题描述】:
我有一个 RichTextBox,它会随着每个 AppendText 滚动,但只有在滚动条位于底部时才会滚动。例如,我想在将文本附加到 RichTextBox 时轻松地从 RichTextBox 的中间选择和复制某些内容。尝试了许多解决方案,但没有一个真正有效。这甚至可能吗?
【问题讨论】:
标签: c# scroll richtextbox
我有一个 RichTextBox,它会随着每个 AppendText 滚动,但只有在滚动条位于底部时才会滚动。例如,我想在将文本附加到 RichTextBox 时轻松地从 RichTextBox 的中间选择和复制某些内容。尝试了许多解决方案,但没有一个真正有效。这甚至可能吗?
【问题讨论】:
标签: c# scroll richtextbox
这取决于您如何追加,但您可以告诉它在追加后将焦点返回到选择(或只是光标)所在的位置。
例如(未经测试,假设 WinForms):
int selStart = rtb.SelectionStart
int selLength = rtb.SelectionLength
rtb.AppendText("test")
rtb.SelectionStart = selStart
rtb.SelectionLength = selLength
这将始终将选择推回附加之前的位置 - 但如果它之前位于底部,则不会向下滚动。对我来说,这似乎是预期的行为。
【讨论】: