【问题标题】:Reset "Search" in Notepad在记事本中重置“搜索”
【发布时间】:2015-10-08 16:20:27
【问题描述】:

我目前正在使用以下代码来允许用户“搜索”他们编写的文本并突出显示特定的单词/短语..

int len = this.txtPad.TextLength;
            int index = 0;
            int lastIndex = this.txtPad.Text.LastIndexOf(this.textBox1.Text);

        while (index < lastIndex)
        {
            this.txtPad.Find(this.textBox1.Text, index, len, RichTextBoxFinds.None);
            this.txtPad.SelectionBackColor = Color.Yellow;
            index = this.txtPad.Text.IndexOf(this.textBox1.Text, index) + 1;
        }

通过突出显示他们在黄色文本框中输入的单词,它可以正常工作。但是,当我单击“关闭”按钮时,我希望文本不再以黄色突出显示并返回到以前的颜色。

我认为这真的很容易,但我就是想不通。我只在学校的 C# 班上过几节课,所以如果这非常容易而且我很愚蠢,我表示歉意。

我尝试将“This.txtPad.SelectionBackColor”更改为不同的颜色,但它只更改了众多搜索结果中的一个。我突然想到循环可能是解决这个问题的正确方法?

提前致谢!这只是为了尝试在课外自学一些东西。

(搜索代码不是我的原始代码,所以如果我们应该在这里给予信任,那么感谢编写它的人)

【问题讨论】:

    标签: c# loops search reset


    【解决方案1】:
    1. 选择所有文本。
    2. 将选择颜色设置为默认颜色。

    或者,记住您在列表中所做的选择。然后您可以稍后运行该列表并仅为这些位置重置格式。

    或者,在格式化之前记住富文本字符串,然后再恢复字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多