InputFocusController 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
ContentIsland포커스 이벤트의 처리 및 관리를 지원하는 개체를 나타냅니다.
public ref class InputFocusController sealed : InputObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65540)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class InputFocusController final : InputObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65540)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class InputFocusController : InputObject
Public NotInheritable Class InputFocusController
Inherits InputObject
- 상속
- 특성
설명
ContentIsland에는 Win32 API 상호 작용하고 Win32 메시지(예: 다양한 입력 메시지)를 받을 수 있는 기본 HWND 있습니다.
ContentIsland 포커스가 있으면 시스템에서 키보드 입력 메시지를 받습니다. 키보드 입력 이벤트는 InputKeyboardSource.GetForIsland(Microsoft.UI.Content.ContentIsland) 메서드를 통해 검색되는 InputKeyboardSource 개체에서 처리할 수 있습니다.
메모
Win32 포커스 및 키보드 입력에 대한 자세한 내용은 키보드 입력 개요키보드 포커스 및 활성화 섹션을 참조하세요.
삭제 시 동작
InputFocusController는 특정 ContentIsland연결됩니다. InputFocusController가 삭제되면 해당 연결이 손실되고 모든 이벤트 처리기가 등록 취소됩니다.
연결된 ContentIsland 삭제되면 연결된 InputFocusController도 삭제됩니다.
자세한 내용은 Microsoft.UI.Input.InputObject
스레딩 모델
InputFocusController는 생성된 스레드에서만 사용할 수 있습니다. 다른 스레드의 모든 속성 액세스 또는 함수 호출은 RPC_E_WRONG_THREAD(또는 해당하는 프로젝션된 오류 유형)를 반환합니다.
자세한 내용은 Microsoft.UI.Input.InputObject
속성
DispatcherQueue |
InputObject에 대한 DispatcherQueue 가져옵니다. (다음에서 상속됨 InputObject) |
HasFocus |
연결된 ContentIsland 포커스가 있는지 여부를 가져옵니다. |
메서드
DepartFocus(FocusNavigationRequest) |
Content.ContentIsland 호스트에 대한 InputFocusNavigationHost.DepartFocusRequested 이벤트를 발생합니다. 예를 들어 사용자는 ContentIsland 내의 모든 탭 가능 요소를 탭하여 이제 포커스가 아일랜드에서 호스팅 애플리케이션의 다른 항목으로 이동해야 합니다. |
GetForIsland(ContentIsland) |
지정된 ContentIsland대한 InputFocusController 개체를 검색합니다. |
TrySetFocus() |
InputFocusController와 연결된 ContentIsland 포커스를 설정하려고 시도합니다. |
이벤트
GotFocus |
연결된 ContentIsland 포커스를 받을 때 발생합니다. |
LostFocus |
연결된 ContentIsland포커스를 이동할 때 발생합니다. |
NavigateFocusRequested |
Content.ContentIsland 호스트가 ContentIsland에 초점을 맞추려고 할 때 발생합니다. 예를 들어 사용자는 호스트의 요소를 탭하여 이제 ContentIsland로 탭해야 합니다. 호스팅 애플리케이션은 SiteBridge연결된 InputFocusNavigationHostInputFocusNavigationHost.NavigateFocus(Microsoft.UI.Input.FocusNavigationRequest) 호출합니다. 그런 다음 ContentIsland에 대한 InputFocusController 이 NavigateFocusRequested 이벤트를 수신하고 포커스를 맞출지 여부를 결정할 수 있습니다. |