У меня есть элемент управления, который содержит NumericUpDown
. Обновление отображается только тогда, когда контейнер имеет фокус, поэтому контейнер должен быть выбран (иначе он никогда не сможет получить фокус). Я хочу, чтобы элемент управления вел себя как единое целое в отношении порядка табуляции; то есть, когда пользователь вкладывает элемент управления, он показывает обновление, и обновление фокусируется; когда пользователь уходит от обновления, это как если бы он ушел от элемента управления.
Достаточно просто выполнить первую часть: в OnEnter контейнера я фокусирую обновление. Если пользователь уходит без сдвига, он также работает нормально, так как следующий элемент управления в порядке вкладок является правильным. Однако предыдущим элементом управления в порядке перехода к обновлению является контейнер, так как его нужно было выбирать; поэтому, когда пользователь сдвигает вкладки от обновления, контейнер выбирается, и поэтому обновление выбирается снова.
Как выбрать предыдущий элемент управления для элемента управления контейнером, когда пользователь сдвигает вкладки от обновления?
UPDATE:
Моя проблема не в том, чтобы определить, когда мне нужно это сделать, - это в поиске элемента управления для отправки фокуса.
UPDATE:
SelectNextControl
только кажется, что работает в элементах управления родителя контейнера; если контейнер является единственным элементом управления своего родителя, он не меняет фокус, даже если в других частях иерархии есть другие элементы управления, которые должны получать фокус через табуляцию.