不能完全清除richtextbox

本文关键字:richtextbox 清除 不能 | 更新日期: 2023-09-27 18:17:51

我有一个RichTextBox,我写一个长列表的数据使用一个简单的写方法(见下)

我使用垂直滚动条,书写和清除是好的。问题是清除文本后的新文本。

我使用textbox.clear();这将清除框OK,但当新的文本到达时,旧的(已清除!)文本再次显示,后面跟着新的文本。

我也试过:重置,刷新,更新。dispose, Text =", richTextBox.Document.Blocks.Clear();(不要那个)。我也试过new textbox = new textbox,都没有用。

文本一遍又一遍地显示,直到我重置应用程序。我看过几个关于那个的表单线程,但是没有帮助。

我的猜测:我使用两个滚动条。滚动条必须有一个缓冲区,数据保存在某个地方的活动滚动条缓冲区?

任何(好)主意都会受到祝福。

这是我如何写/擦除文本在richtextbox:(简化。mainDisplay是RichTextBox)

 public void mainDisplayText(string text)
    {
            this.mainDisplay.AppendText(text);
            this.mainDisplay.ScrollToCaret();
    }  
private void btnClear_Click(object sender, EventArgs e)
    {
       //Have tried all these options:
        this.mainDisplay.Text = "";  //or
        this.mainDisplay.Clear();    //or
        this.mainDisplay.SelectAll();     //or
        this.mainDisplay.SelectedText = "";
    }

不能完全清除richtextbox

你在重复使用相同的字符串,所以:

this.mainDisplay.Clear();
text = string.Empty;

应该可以:)

真奇怪。这可能是。net 4.7中的一些问题吗?x ?自上周以来,我在4.7.2中编译了所有内容,这个问题也在这里浮出水面。Clear()似乎带回了. text内容。因此,在 Text="之后的Clear() 不起作用。