在 wpf richtextbox 中清除和重新加载内容后清除 pageup/pagedown 平移值?

Clear pageup/pagedown panning values after clear and reload content in wpf richtextbox?

我正在使用 wpf richtextbox.use 下面的函数用于向上翻页。

TextRange range10 = new TextRange(txtAppendValue.CaretPosition.GetLineStartPosition(1), txtptrCaret);

                FrameworkContentElement fce1 = (range10.End.Parent as FrameworkContentElement);
                if (fce1 != null)
                {
                    fce1.BringIntoView();
                    range10 = null;
                    fce1 = null;
                }

它working.After我清除了richtextbox并加载了一些其他内容,当时显示的是上次pageup发生的内容?如何在我重新加载文档时清除。

已更新:

public void HideTopBorder()
        {
            TextPointer currentline = txtAppendValue.CaretPosition.GetLineStartPosition(1);
            System.Windows.Rect rc = currentline.GetCharacterRect(LogicalDirection.Forward);
            System.Windows.Point upperLeftCorner = rc.Location;
            HitTestResult result = VisualTreeHelper.HitTest(txtAppendValue, upperLeftCorner);
            if (result == null)
            {

                Thickness margin = txtAppendValue.Margin;
                margin.Top = -20;
                txtAppendValue.Margin = margin;
                currentline = null;
            }
            else
            {
                currentline = null;
            }

        }

在结果为 null 之后,只有 pageup happened.at 那次我清除文档并加载另一个 document.But 现在显示已平移 point.not 文档顶部的 richtextbox。

问候 阿俊

在加载新文档之前保存 rtb.VerticalOffset 的值。然后加载新文档并将存储的值重新分配给 rtb.VerticalOffset.