Partager via


InputFocusController Classe

Définition

Représente un objet qui prend en charge la gestion et la gestion des événements de focus sur un 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
Héritage
Object Platform::Object IInspectable InputObject InputFocusController
Attributs

Remarques

Un ContentIsland a un HWND sous-jacent sous-jacent qui peut interagir avec API Win32 et recevoir des messages Win32 (tels que différents messages d’entrée).

Un ContentIslanda le focus si son HWND sous-jacent a focus Win32.

Lorsqu’un ContentIsland a le focus, il reçoit des messages d’entrée clavier du système. Les événements d’entrée clavier peuvent être gérés par un objet InputKeyboardSource, qui est récupéré via la méthode InputKeyboardSource.GetForIsland(Microsoft.UI.Content.ContentIsland).

Note

Pour plus d’informations sur le focus Win32 et l’entrée du clavier, consultez la section Focus clavier et activation de la vue d’ensemble de l’entrée clavier .

Comportement lorsqu’il est supprimé

Un InputFocusController est associé à unContentIsland spécifique . Si InputFocusController est supprimé, il perd cette association et tous les gestionnaires d’événements ne sont pas inscrits.

Si le ContentIsland associé est supprimé, l’objet InputFocusController associé est également supprimé.

Pour plus d’informations, consultez Microsoft.UI.Input.InputObject.

Modèle de thread

Un InputFocusController peut uniquement provenir du thread où il a été créé. Tout appel de propriété ou de fonction sur un autre thread retourne RPC_E_WRONG_THREAD (ou le type d’erreur projeté équivalent).

Pour plus d’informations, consultez Microsoft.UI.Input.InputObject.

Propriétés

DispatcherQueue

Obtient le dispatcherQueue pour InputObject.

(Hérité de InputObject)
HasFocus

Obtient si le ContentIsland associé a le focus.

Méthodes

DepartFocus(FocusNavigationRequest)

Déclenche l’événement InputFocusNavigationHost.DepartFocusRequested pour l’hôte Content.ContentIsland.

Par exemple, l’utilisateur dispose de tabulations par le biais de tous les éléments tabtables dans ContentIsland et le focus doit maintenant passer de l’île à un autre élément de l’application d’hébergement.

GetForIsland(ContentIsland)

Récupère un objet pour leContentIsland spécifié .

TrySetFocus()

Tente de définir le focus sur le ContentIsland associé à InputFocusController.

Événements

GotFocus

Se produit lorsque le ContentIsland associé reçoit le focus.

LostFocus

Se produit lorsque le focus est déplacé à partir du ContentIsland associé.

NavigateFocusRequested

Se produit lorsque l’hôte Content.ContentIsland souhaite que ContentIsland prenne le focus.

Par exemple, l’utilisateur a tabulé les éléments de l’hôte et doit désormais être tabulé dans ContentIsland. L’application d’hébergement appelle InputFocusNavigationHost.NavigateFocus(Microsoft.UI.Input.FocusNavigationRequest) sur le InputFocusNavigationHost associé auSiteBridge . La InputFocusController pour ContentIsland reçoit ensuite cet événement NavigateFocusRequested et peut décider s’il prend le focus.

S’applique à

Voir aussi