避免一个词被取消选择

Avoid that a word be deselected

我正在开发一个将测量打字速度的应用程序。

我想select当时正在写的字。我在表单加载事件中有这段代码:

string line;

FileStream fs = new FileStream("text.txt", FileMode.Open, FileAccess.Read);
StreamReader fr = new StreamReader(fs);

while ((line = fr.ReadLine()) != null)
{
    textBox1.AppendText(line);
}

string texto = textBox1.Text;

string[] split = texto.Split(new char[] { ' ' });
textBox1.SelectionStart = 0;
textBox1.SelectionLength = split[0].Length;

可以正常工作,但是当我将焦点切换到另一个文本框开始键入时,selected 单词消失了。

有没有办法避免这种情况的发生?

要防止文本框在失去焦点时失去选择,您可以这样做(在创建表单时)。

textBox1.HideSelection = false;

参考TextBoxBase.HideSelection Property:

Gets or sets a value indicating whether the selected text in the text box control remains highlighted when the control loses focus.