编辑控件类型

本主题提供有关 编辑 控件类型的Microsoft UI 自动化支持的信息。

通过编辑控件,用户无需格式设置支持即可查看和编辑简单的文本行。

以下部分定义编辑控件类型的所需 UI 自动化树结构、属性、控件模式和事件。 UI 自动化要求适用于 UI 框架/平台为控件类型和控件模式集成 UI 自动化支持的所有编辑控件。

本主题包含以下部分。

典型树结构

下表描述了与编辑控件相关的 UI 自动化树的典型控件和内容视图,并描述了每个视图中可包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述

控件视图 内容视图
  • 编辑
  • 编辑

 

实现 编辑 控件类型的控件始终在 UI 自动化树的控件视图中有零个滚动条,因为它是单行控件。 在一些布局方案中,单行文本可能会换行。 编辑 控件类型仅适用于少量文本。

相关属性

下表列出了其值或定义与编辑控件特别相关的 UI 自动化属性。 有关 UI 自动化属性的详细信息,请参阅 从 UI 自动化元素检索属性

UI 自动化属性 价值 笔记
UIA_AutomationIdPropertyId 请参阅备注。 此属性的值在 UI 自动化树的原始视图中的所有对等元素中必须是唯一的。
UIA_BoundingRectanglePropertyId 请参阅备注。 包含整个控件的最外侧矩形。
UIA_ClickablePointPropertyId 请参阅备注。 编辑控件必须具有一个可单击点,当用户单击该控件的鼠标时,该点会将输入焦点提供给控件的编辑部分。
UIA_ControlTypePropertyId 编辑
UIA_IsContentElementPropertyId TRUE 编辑控件始终包含在 UI 自动化树的内容视图中。
UIA_IsControlElementPropertyId TRUE 编辑控件始终包含在 UI 自动化树的控件视图中。
UIA_IsKeyboardFocusablePropertyId 请参阅备注。 如果控件可以接收键盘焦点,它必须支持此属性。
UIA_IsPasswordPropertyId 请参阅备注。 必须设置为对包含密码的编辑控件 TRUE。 如果编辑控件包含密码内容,屏幕阅读器可以使用此属性来确定在用户键入键时是否应读出击键。
UIA_LabeledByPropertyId 请参阅备注。 如果存在与控件关联的静态文本标签,此属性必须公开对该控件的引用。 如果文本控件是另一个控件的子组件,则它不会设置 LabeledBy 属性集。
UIA_LocalizedControlTypePropertyId 请参阅备注。 编辑 控件类型对应的本地化字符串。 en-US 或英语(美国)的默认值为“edit”。
UIA_NamePropertyId 请参阅备注。 编辑控件的名称通常是从静态文本标签生成的。 如果没有静态文本标签,则应用程序开发人员必须分配 名称 的属性值。 Name 属性不应包含编辑控件的文本内容。

 

所需的控件模式

下表列出了编辑控件支持所需的 UI 自动化控件模式。 有关控件模式的详细信息,请参阅 UI 自动化控件模式概述

控件模式/模式属性 支持/值 笔记
IRangeValueProvider 取决于 采用数值范围的所有编辑控件都必须公开 RangeValue 控件模式。
最低 请参阅备注。 此属性必须是可以设置编辑控件内容的最小值。
最大 请参阅备注。 此属性必须是可以设置编辑控件内容的最大值。
SmallChange 请参阅备注。 此属性必须指示值可设置为的小数位数。 如果编辑控件仅采用整数,则 smallChange 属性值 必须为 1。 如果编辑控件的范围为 1.0 到 2.0,则 smallChange 属性值必须为 0.1。 如果编辑控件的范围为 1.00 到 2.00,则 SmallChange 属性值必须为 0.001。
LargeChange NULL 此属性不需要在编辑控件上公开。
请参阅备注。 此属性指示编辑控件的数字内容。 当 UI 自动化客户端在 MinimumMaximum 属性中指定的范围内设置更精确的值时,Value 属性会自动舍入到最接近接受的值。
ITextProvider 必填 所有编辑控件都必须支持 文本 控件模式,因为详细信息必须始终可用于辅助技术客户端。
IValueProvider 取决于 采用字符串的所有编辑控件都必须公开 控件模式。
IsReadOnly 请参阅备注。 必须设置此属性,以指示控件是否可以以编程方式设置值,还是可由用户编辑该值。
请参阅备注。 此属性包含编辑控件的文本内容。 如果 UIA_IsPasswordPropertyId 属性设置为 TRUE,则查询 Value 属性必须返回错误。

 

必需事件

下表列出了编辑控件所需的 UI 自动化事件。 有关事件的详细信息,请参阅 UI 自动化事件概述

UI 自动化事件 笔记
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId 属性更改事件。
UIA_IsEnabledPropertyId 属性更改事件。 如果控件支持 IsEnabled 属性,则必须支持此事件。
UIA_IsOffscreenPropertyId 属性更改事件。 如果控件支持 IsOffscreen 属性,则必须支持此事件。
UIA_NamePropertyId 属性更改事件。
UIA_RangeValueValuePropertyId 属性更改事件。 如果控件支持 RangeValue 控件模式,则必须支持此事件。
UIA_ScrollHorizontallyScrollablePropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_ScrollHorizontalScrollPercentPropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_ScrollHorizontalViewSizePropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_ScrollVerticallyScrollablePropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_ScrollVerticalScrollPercentPropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_ScrollVerticalViewSizePropertyId 属性更改事件。 编辑控件绝不支持 滚动 控件模式。
UIA_StructureChangedEventId
UIA_Text_TextChangedEventId 如果控件支持 文本 控件模式,则它必须支持此事件。
UIA_Text_TextSelectionChangedEventId 如果控件支持 文本 控件模式,则它必须支持此事件。
UIA_ValueValuePropertyId 属性更改事件。 如果控件支持 控件模式,则它必须支持此事件。

 

言论

编辑控件可用作不支持选择或编辑文本的只读文本字段。 此类编辑控件的行为是具有特定名称和值的字段对象。

如果编辑控件包含占位符文本(例如提示横幅),则文本应用作 HelpText 属性,除非用户可以编辑文本,然后重复使用为占位符文本。 例如,打开新选项卡时,Windows Internet Explorer 地址栏包含文本“about:Tabs”。 这不是 HelpText,因为它是可由用户使用或编辑的编程地址。

概念

UI 自动化控件类型概述

UI 自动化概述