清除并重新加载wpf richtextbox中的内容后,清除页面调度/向下翻页平移值?

时间:2016-01-14 06:47:18

标签: c# wpf scroll richtextbox panning

我在wpf richtextbox中工作。使用以下函数用于页面向上。

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;
                }

它正在工作。我清除了richtextbox并加载了其他一些内容,那时显示了上次发生翻页的内容?如何清除我重新加载文档的时间。

更新:

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.at那次我清除文档并加载另一个文档。但是现在显示了已经平移的point.not文档顶部的richtextbox。

此致 阿琼

1 个答案:

答案 0 :(得分:1)

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