如何在Winforms TextBox中以编程方式突出显示选择

时间:2008-11-02 18:58:50

标签: c# winforms textbox selection

我这里没有进行太多的研究,但直观的事情是行不通的:

private void SerachButton1_Click(object sender, EventArgs e)
{
   String serchTerm = searchTerm1.Text;
   String text = usualTextBox.Text;


   Int32 index = text.IndexOf(serchTerm);

   if (index >= 0)
   {
      usualTextBox.Select(index, serchTerm.Length);
   }
}

SelectedTextSelectionLengthSelectionStart属性在调用Select之后正如我所期望的那样,但没有可见的选择。

我在这里做错了什么?

编辑:我也试过RichTextBox。当我为其显示的选项设置背景和文本颜色时,但是当您手动选择文本的其他部分或只是单击文本中的位置时,它不会自动取消选择。这两种类型的选择本质上是不同的,如果您以编程方式选择,您还必须以编程方式取消选择吗?

1 个答案:

答案 0 :(得分:8)

您需要将usualTextBox.HideSelection设置为false,以便在焦点不在TextBox时,选择仍然可见。