Похоже, что когда приложение WPF запускается, ничто не фокусируется.
Это действительно странно. Каждая другая структура, которую я использовал, делает именно то, что вы ожидаете: ставит первоначальный фокус на первый элемент управления в порядке вкладок. Но я подтвердил, что это WPF, а не только мое приложение - если я создаю новое окно и просто поставлю в него текстовое поле и запустим приложение, у TextBox не будет фокуса, пока я не нажму на него или не нажму Tab, Тьфу.
Мое фактическое приложение сложнее, чем просто TextBox. У меня есть несколько уровней UserControls в UserControls. Один из этих UserControls имеет обработчики Focusable = "True" и KeyDown/KeyUp, и я хочу, чтобы он имел фокус, как только откроется мое окно. Тем не менее, я по-прежнему новичок в WPF, и мне не очень повезло, как это сделать.
Если я запустил приложение и нажимаю клавишу Tab, тогда фокус переходит на мой настраиваемый элемент управления, и он начинает работать так, как я хочу. Но я не хочу, чтобы моим пользователям приходилось ударять Tab, прежде чем они смогут начать использовать это окно.
Я играл с FocusManager.FocusedElement, но я не уверен, какой элемент управления установить (окно верхнего уровня - родительский элемент, который содержит настраиваемый элемент управления - сам настраиваемый элемент управления) или что нужно установить это к.
Что мне нужно сделать, чтобы мой глубоко вложенный элемент управления имел первоначальный фокус, как только откроется окно? Или еще лучше, чтобы сфокусировать первый настраиваемый элемент управления в порядке вкладок?