Поделиться через


ContentElement.Focus Метод

Определение

Попытка задать фокус для данного элемента.

public:
 virtual bool Focus();
public bool Focus ();
abstract member Focus : unit -> bool
override this.Focus : unit -> bool
Public Function Focus () As Boolean

Возвращаемое значение

true если элемент может получить клавиатурный фокус; false если в результате вызова данного метода элемент фокус не получил.

Реализации

Примеры

В следующем примере показан обработчик событий с загрузкой страницы, который находит указанный именованный абзац в документе и устанавливает фокус на него. Абзацы по умолчанию не фокусируются; этот конкретный абзац имеет примененный (не показанный) стиль, который использовал стиль Setter , чтобы сделать его фокусируемым.

void FocusOnParagraph(object sender, RoutedEventArgs e)
{
  ContentElement ce = this.FindName("focusableP") as ContentElement;
  ce.Focus();
}
Private Sub FocusOnParagraph(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Dim ce As ContentElement = TryCast(Me.FindName("focusableP"), ContentElement)
  ce.Focus()
End Sub

Комментарии

Чтобы быть фокусируемым, Focusable и IsEnabled оба должны иметь значение true. Обратите внимание, что по ContentElement умолчанию не Focusable все производные классы.

Даже если элемент доступен для фокусировки и включен, обработка событий в определенном дереве (например, для составного элемента управления) может реагировать на события фокуса предварительного просмотра, не разрешая фокус, поэтому этот метод возвращает false.

Фокус в целом регулируется двумя отдельными понятиями: фокусом клавиатуры и логическим фокусом, которые не всегда идентичны. Этот метод задает логический фокус. Нет никаких программных средств для настройки фокуса клавиатуры; фокус клавиатуры определяется введенными пользователем данными. Дополнительные сведения см. в разделах Общие сведения о фокусе и Общие сведения о входных данных.

Если вызов Focus возвращает , IsKeyboardFocusedtrueи IsKeyboardFocusWithin также trueимеют значение .

Если связанные свойства еще trueне имеют значения , при вызове Focusвызывается одно или несколько из следующих событий в следующем порядке: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (источник — новый целевой объект фокуса), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (источник — это новый целевой объект фокуса).

Применяется к

См. также раздел