我想移动一个 RichTextBox
的内容到内容的特定行。 RichTextBox
提供方法ScrollToVerticalOffset
来自嵌入式 ScrollViewer
.该方法记录在MSDN中,但名为offset的参数的度量单位不是specified .类型是 double
.
一个 VerticalOffset
TextBox
的属性记录为与设备无关的单位(每单位 1/96 英寸)。
所以我试图计算字体大小的偏移量。字体大小以像素为单位。结果公式是
offset = fontSize * 96 / 72 * lineNumber;
但这远远落后于所需的行。现在我正在使用这个计算:
offset = fontSize * lineNumber;
这样对吗?
最佳答案
确实,问这个问题已经很久了,但仍然没有找到正确的答案!!
我现在使用了这段代码,这对我来说真的很好:
var offset = (lineNumber * (fontSize + 2)) - richTextBox.ActualHeight / 2;
richTextBox.ScrollToVerticalOffset(offset);
如果您比这种方式更了解一种解决方案,请帮助我。
关于wpf - 从 WPF RichTextBox 中的行号计算 ScrollToVerticalOffset 的偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10333168/