UIElement.Focus 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이 요소에 포커스를 설정하려고 시도합니다.
public:
virtual bool Focus();
public bool Focus ();
abstract member Focus : unit -> bool
override this.Focus : unit -> bool
Public Function Focus () As Boolean
반환
키보드 포커스와 논리적 포커스가 이 요소로 설정되어 있으면 true
이고, 논리적 포커스만 이 요소로 설정되어 있거나 이 메서드에 대한 호출이 포커스를 강제로 변경하지 않으면 false
입니다.
구현
예제
다음 예제에서는 에서 참조Name하는 에 포커스를 TextBox 설정한 다음 내에서 TextBox커서의 위치를 조정합니다.
void OnClickMoveToStart(object sender, RoutedEventArgs e)
{
tbPositionCursor.Focus();
tbPositionCursor.Select(0, 0);
}
Private Sub OnClickMoveToStart(ByVal sender As Object, ByVal e As RoutedEventArgs)
tbPositionCursor.Focus()
tbPositionCursor.Select(0, 0)
End Sub
설명
포커스가 가능하려면 이고IsEnabled, Focusable 둘 다 여야 true
합니다.
요소가 포커스 가능하고 유효한 Focus
경우에도 미리 보기 이벤트는 특정 트리에서 처리될 수 있으며 해당 요소에 대한 포커스가 허용되지 않을 수 있습니다(예: 복합 컨트롤).
이 경우 이 메서드는 를 반환합니다 false
.
일반적으로 포커스는 키보드 포커스와 논리적 포커스라는 두 가지 개념으로 제어됩니다. 이러한 두 개념이 항상 동일하지는 않습니다. 자세한 내용은 포커스 요약 및 입력 개요를 참조하세요.
호출 Focus 이 를 IsKeyboardFocused 반환true
하는 경우 및 IsKeyboardFocusWithin 도 true
입니다.
관련 속성이 아직 true
없는 경우 를 호출Focus할 때 다음 이벤트 PreviewLostKeyboardFocus중 하나 이상이 발생합니다. , PreviewGotKeyboardFocus (원본은 새 포커스 대상), IsKeyboardFocusedChanged, , IsKeyboardFocusWithinChangedLostKeyboardFocus, GotKeyboardFocus (원본은 새 포커스 대상임).
이 호출이 성공하려면 애플리케이션의 다른 요소에 이전에 포커스가 있어야 했습니다. 또한 부모 컨테이너 요소가 이 메서드를 호출할 때 특정 상황에서 자식은 포커스를 가져오고 반환 값은 가 됩니다 false
. 요소에 포커스가 있는지 테스트하려면 및 IsKeyboardFocused
속성을 사용합니다IsKeyboardFocusWithin
.
적용 대상
.NET