C# 的GotFocus事件问题

来源:百度知道 编辑:UC知道 时间:2024/05/07 08:44:45
我想在一个TextBox里面`

得焦时`全选

像IE地址栏那样`

我在里面写了TextBox.SelectAll();

甚至先前也加了TextBox.Focus();

但还是没有全选`有谁知道为什么吗?

this.textBox1.Click += new EventHandler(textBox1_Click);
void textBox1_Click(object sender, EventArgs e)
{
textBox1.SelectAll();
}
用Click事件就可以了。
因为当你用鼠标点击一个没有焦点的TextBox时,先触发GotFocus事件,然后因为鼠标的点击而自动取消的文本选择并且把光标定位到鼠标点的位置,接着再触发Click事件。
也就是说GotFocus事件处理之后鼠标点击使得处理的结果被改变了,而Click事件是在鼠标点击之后触发的,所以不受影响。