CoreInputView 类

定义

使应用能够控制停靠、未停靠、可移动或临时输入窗格 (和关联的 UI) 的显示,在窗格移动、显示或隐藏时接收通知,并确定窗格遮挡应用窗口的哪个部分。

注意

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
继承
Object Platform::Object IInspectable CoreInputView
属性

Windows 要求

设备系列
Windows 10 Fall Creators Update (在 10.0.16299.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v5.0 中引入)

注解

主视图是指 CoreInputViewKind.KeyboardCoreInputViewKind.Handwriting 视图,而 CoreInputView 可以是 CoreInputViewKind.Handwriting 中的任何值。

仅供框架 (使用,例如 XAML) 或自定义文本控件。

你的应用可以使用此对象公开的信息来调整和重新排列其 UI,以考虑任何遮挡。

CoreInputView API 支持以下类型的输入窗格。

  • 停靠的软输入面板 (SIP) (如 触摸键盘和手写面板 ),通常应用 UI 会重排。
  • 浮动工具栏或 SIP - 应用 UI 通常不会重排。
  • 覆盖面板(如内联 Ink 或 IME 候选窗口) - 通常,应用 UI 不会重排编辑控件,但会重排文本/搜索建议。

当用户执行要求他们提供信息的操作(例如输入文本字段)时,将显示输入窗格。

默认情况下,Windows 会处理输入窗格事件并重新定位内容,以便用户可以使用焦点查看控件。 如果在应用中将 CoreTextEditContext.InputPaneDisplayPolicy 设置为 Manual ,则需负责使用 TryShowPrimaryViewTryHidePrimaryView 显示和隐藏输入窗格。 使用此类替代默认行为并自定义输入窗格。

调用 GetForCurrentView 以获取 CoreInputView 对象。

注册以接收输入窗格通知后,每当显示或隐藏在调用 GetForCurrentView 方法时可见的窗口的窗格时,系统会调用事件委托。

注意

此类不敏捷,这意味着需要考虑其线程模型和封送处理行为。 有关详细信息,请参阅 线程处理和封送处理 (C++/CX)

版本历史记录

Windows 版本 SDK 版本 已添加值
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

方法

GetCoreInputViewOcclusions()

检索对当前遮挡应用的每个输入窗格的引用。

GetForCurrentView()

检索与当前窗口关联的 CoreInputView 对象。

GetForUIContext(UIContext)

获取与具有指定上下文标识符的视图关联的 CoreInputView 对象。

IsKindSupported(CoreInputViewKind)

获取是否支持指定的 CoreInputView 类型。

TryHide()

如果) 与 CoreInputView 窗格关联的输入窗格可见,则尝试隐藏 (。

TryHidePrimaryView()

如果) 与 CoreInputView 关联的输入窗格可见,则尝试隐藏 (。

TryShow()

如果) 与 CoreInputView 关联的输入窗格隐藏,则尝试显示 (。

TryShow(CoreInputViewKind)

如果) 与 CoreInputView 关联的指定类型的输入窗格隐藏,则尝试显示 (。

TryShowPrimaryView()

如果) CoreInputView 窗格隐藏,则尝试显示 (。

此方法是“尽力而为”,只保证用户能够与重点控件交互。 对于停靠的软输入面板 (SIP) (如 触摸键盘和手写面板),仅当硬件键盘不可用时,才会显示窗格。

TryTransferXYFocusToPrimaryView(Rect, CoreInputViewXYFocusTransferDirection)

尝试将焦点从应用程序 UI 移动到输入窗格。

事件

OcclusionsChanged

当一个或多个 CoreInputViewOcclusion 对象更改其位置或遮挡区域以响应与 CoreInputView 关联的输入窗格的重新定位时发生。

PrimaryViewAnimationStarting

应用程序中为响应 CoreInputView 主视图的显示或隐藏而发生的动画。

PrimaryViewHiding

在与 CoreInputView 关联的输入窗格隐藏 ((如果) 可见)之前发生。

PrimaryViewShowing

在与 CoreInputView 关联的输入窗格显示在 ((如果隐藏) )之前发生。

SupportedKindsChanged

CoreInputView 支持的 CoreInputViewKind 视图 集合发生更改 时发生。

XYFocusTransferredToPrimaryView

当焦点从应用程序 UI 移动到输入窗格时发生。

XYFocusTransferringFromPrimaryView

在输入窗格失去焦点之前和 UI 元素获得焦点之前发生。

适用于

另请参阅