это глупо, но это работает, только если вы подождите немного, попробуйте эту версию:
using System;
using System.Windows;
using System.Windows.Controls;
namespace WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var textBox = new TextBox() {};
listBox1.Items.Add(textBox);
System.Threading.ThreadPool.QueueUserWorkItem(
(a) =>
{
System.Threading.Thread.Sleep(100);
textBox.Dispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Normal,
new Action(
delegate()
{
textBox.Focus();
}
));
}
);
}
}
}
Я проводил локальное тестирование и не мог это исправить, пока не нашел этот вопрос и не нашел ответ на вопрос fuzquat, поэтому проголосуйте за меня здесь и за него: D
Невозможно установить фокус на дочерний элемент UserControl