Здається, що коли програма WPF запускається, то на цьому нічого не зосереджено.
Це справді дивно. Усі інші рамки, якими я користувався, роблять саме те, що ви очікували: ставить початковий фокус на перший елемент управління в порядку вкладки. Але я підтвердив, що це WPF, а не лише моя програма - якщо я створю нове Вікно і просто поміщаю в нього TextBox і запускаю додаток, TextBox не фокусується, поки я не натискаю на нього або не натискаю Tab . Гидота.
Мій фактичний додаток складніше, ніж просто TextBox. У мене є кілька шарів UserControls в UserControls. Один з цих UserControls має Focusable = "True" та KeyDown / KeyUp оброблювачі, і я хочу, щоб він мав фокус, як тільки моє вікно відкриється. Я все ще дещо початківець з WPF, і мені не дуже пощастило з'ясувати, як це зробити.
Якщо я запускаю додаток і натискаю клавішу Tab, то фокус переходить до мого фокусируемого управління, і він починає працювати так, як мені хочеться. Але я не хочу, щоб мої користувачі мали натиснути Tab, перш ніж вони зможуть почати користуватися вікном.
Я розігрувався з FocusManager.FocusedElement, але я не впевнений, на якому контролі його встановити (вікно верхнього рівня? Батьків, яке містить фокусируемый елемент управління; сам фокусируемый елемент управління) або на що його встановити.
Що мені потрібно зробити, щоб мій глибоко вкладений елемент керування мав початковий фокус, як тільки відкриється вікно? Або ще краще, щоб сфокусувати перший фокусируемый елемент управління в порядку вкладки?