Почему Вы просто не используете Событие mouseDown текстового поля? Это хорошо работает для меня и не нуждается в дополнительной булевской переменной. Очень чистый и простой, например:
private void textbox_MouseDown(object sender, MouseEventArgs e) {
if (textbox != null && !string.IsNullOrEmpty(textbox.Text))
{
textbox.SelectAll();
} }
Задачи Версия
и AssemblyInfo
из задач сообщества MSBuild Проект может помочь.