CoreInputView Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Enables an app to control the display of a docked, undocked, moveable, or transitory input pane (and associated UI), receive notifications when the pane is moved, displayed, or hidden, and to determine which portion of the app's window is obscured by the pane.
Note
Not supported on HoloLens.
public ref class CoreInputView sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class CoreInputView final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CoreInputView final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class CoreInputView
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class CoreInputView
Public NotInheritable Class CoreInputView
- Inheritance
- Attributes
Windows requirements
Device family |
Windows 10 Fall Creators Update (introduced in 10.0.16299.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v5.0)
|
Remarks
Primary view refers to either of the CoreInputViewKind.Keyboard or CoreInputViewKind.Handwriting views, while CoreInputView can be any of the values from CoreInputViewKind.Handwriting.
Used by frameworks (such as XAML) or custom text controls only.
Your app can use the info exposed by this object to adjust and reflow its UI to account for any occlusion.
The CoreInputView APIs support the following types of input panes.
- Docked Soft Input Panel (SIP) like the Touch keyboard and handwriting panel – typically, your app UI reflows.
- Floating toolbar or SIP – typically, your app UI does not reflow.
- Overlay panels such as inline Ink or IME candidate windows – typically, your app UI does not reflow for the edit control, but does reflow for the text/search suggestions.
The input pane appears when the user performs an action that requires them to provide information, such as entering a text field.
By default, Windows handles input pane events and repositions content so that users can see the control with focus. If you set CoreTextEditContext.InputPaneDisplayPolicy to Manual in your app, you are responsible for showing and hiding the input pane using TryShowPrimaryView and TryHidePrimaryView. Use this class to override the default behavior and customize the input pane.
Call GetForCurrentView to get a CoreInputView object.
After you register to receive input pane notifications, the system calls your event delegate whenever the pane is shown or hidden for the window that was visible when you called the GetForCurrentView method.
Note
This class is not agile, which means that you need to consider its threading model and marshaling behavior. For more info, see Threading and Marshaling (C++/CX).
Version history
Windows version | SDK version | Value added |
---|---|---|
1803 | 17134 | TryTransferXYFocusToPrimaryView |
1803 | 17134 | XYFocusTransferredToPrimaryView |
1803 | 17134 | XYFocusTransferringFromPrimaryView |
1809 | 17763 | TryHide |
1809 | 17763 | TryShow |
1809 | 17763 | TryShow(CoreInputViewKind) |
1903 | 18362 | GetForUIContext |
2004 | 19041 | PrimaryViewHiding |
2004 | 19041 | PrimaryViewShowing |
Methods
GetCoreInputViewOcclusions() |
Retrieves a reference to each input pane currently occluding the app. |
GetForCurrentView() |
Retrieves the CoreInputView object associated with the current window. |
GetForUIContext(UIContext) |
Gets a CoreInputView object associated with the view having the specified context identifier. |
IsKindSupported(CoreInputViewKind) |
Gets whether the type of CoreInputView specified is supported. |
TryHide() |
Attempts to hide (if visible) the input pane associated with the CoreInputView pane. |
TryHidePrimaryView() |
Attempts to hide (if visible) the input pane associated with the CoreInputView. |
TryShow() |
Attempts to show (if hidden) the input pane associated with the CoreInputView. |
TryShow(CoreInputViewKind) |
Attempts to show (if hidden) the specified type of input pane associated with the CoreInputView. |
TryShowPrimaryView() |
Attempts to show (if hidden) the CoreInputView pane. This method is a "best effort" and guarantees only that the user has a way to interact with the focused control. For a docked a Soft Input Panel (SIP) like the Touch keyboard and handwriting panel, the pane is shown only if a hardware keyboard is not available. |
TryTransferXYFocusToPrimaryView(Rect, CoreInputViewXYFocusTransferDirection) |
Attempts to move focus from the application UI to the input pane. |
Events
OcclusionsChanged |
Occurs when one or more CoreInputViewOcclusion objects change their position or occluding area in response to the repositioning of the input pane associated with the CoreInputView. |
PrimaryViewAnimationStarting |
Animations in the application that occur in response to the showing or hiding of the CoreInputView primary view. |
PrimaryViewHiding |
Occurs before the input pane associated with the CoreInputView is hidden (if visible). |
PrimaryViewShowing |
Occurs before the input pane associated with the CoreInputView is shown (if hidden). |
SupportedKindsChanged |
Occurs when the collection of supported CoreInputViewKind views for the CoreInputView changes. |
XYFocusTransferredToPrimaryView |
Occurs when focus is moved to the input pane from the application UI. |
XYFocusTransferringFromPrimaryView |
Occurs before the input pane loses focus and before a UI element gets focus. |