Сергей.
После поиска в Google и поиска я нашел простое решение, которое сработало для меня.
Вам необходимо добавить обработчик события в событие Loaded окна вашего контейнера:
private void yourwindow_Loaded(object sender, RoutedEventArgs e)
{
EventManager.RegisterClassHandler(typeof(TextBox),
TextBox.PreviewMouseLeftButtonDownEvent,
new RoutedEventHandler(SelectivelyIgnoreMouseButton));
}
Далее необходимо создать обработчик для RoutedEventHandler, на который ссылаются, в предыдущем коде:
private void SelectivelyIgnoreMouseButton(object sender, RoutedEventArgs e)
{
TextBox tb = (sender as TextBox);
if (tb != null)
{
if (!tb.IsKeyboardFocusWithin)
{
e.Handled = true;
tb.Focus();
}
}
}
Теперь вы можете добавить команду SelectAll () в обработчиках событий GotFocus к любому элементу управления TextBox отдельно:
private void myTextBox_GotFocus(object sender, RoutedEventArgs e)
{
(sender as TextBox).SelectAll();
}
Ваш текст выделен в фокусе!
Адаптировано с Д-р. Решение WPF, форумы MSDN