UI 自动化对 StatusBar 控件类型的支持
备注
本文档适用于想要使用 System.Windows.Automation 命名空间中定义的托管 UI 自动化类的 .NET Framework 开发人员。 有关 UI 自动化的最新信息,请参阅 Windows 自动化 API:UI 自动化。
本主题介绍 UI 自动化对于 StatusBar 控件类型的支持信息。 在 UI 自动化中,控件类型是一组条件,控件必须满足这些条件才能使用 ControlTypeProperty 属性。 这些条件包括针对 UI 自动化树结构、UI 自动化属性值和控件模式的特定准则。
状态栏控件显示有关将在应用程序窗口中查看的对象和对象组件的信息,或应用程序内与该对象的操作相关的上下文信息。
以下几部分定义 StatusBar 控件类型必需的 UI 自动化树结构、属性、控件模式和事件。 UI 自动化要求适用于所有状态栏控件,无论 Windows Presentation Foundation (WPF)、Win32 还是 Windows 窗体。
必需的 UI 自动化树结构
下表描述与状态栏控件有关的 UI 自动化树的控件视图和内容视图,以及每个视图中可包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述。
控件视图 | 内容视图 |
---|---|
StatusBar - 编辑(0 个或更多个) - 进度条(0 个或多个) - 图像(0 个或多个) - 按钮(0 个或多个) |
StatusBar - 编辑(0 个或更多个) - 进度条(0 个或多个) - 图像(0 个或多个) - 按钮(0 个或多个) |
必需的 UI 自动化属性
下表列出了其值或定义与进度条控件特别相关的 UI 自动化属性。 有关 UI 自动化属性的详细信息,请参阅客户端的 UI 自动化属性。
UI 自动化属性 | 值 | 说明 |
---|---|---|
AutomationIdProperty | 请参阅注释。 | 此属性的值在应用程序的所有控件中都必须保持唯一。 |
BoundingRectangleProperty | 请参阅注释。 | 状态栏的边界矩形必须包含其中包含的所有控件。 |
ClickablePointProperty | 请参阅注释。 | 如果存在边界矩形,则受支持。 如果边界矩形中存在无法单击的点,而你要执行专门的命中测试,则重写并提供可单击的点。 |
IsKeyboardFocusableProperty | 请参阅注释。 | 如果该控件可以接收键盘焦点,则它必须支持此属性。 |
NameProperty | 请参阅注释。 | 状态栏控件不需要名称,除非应用程序中使用了多个状态栏。 在本例中,使用“Internet 状态”或“应用程序状态”等名称来区分每个状态栏。 |
LabeledByProperty | Null |
状态栏控件通常没有标签。 |
ControlTypeProperty | StatusBar | 此值对于所有 UI 框架均相同。 |
LocalizedControlTypeProperty | “状态栏” | 与状态栏控件类型相对应的已本地化字符串。 |
IsContentElementProperty | 正确 | 状态栏控件始终包含内容。 |
IsControlElementProperty | 正确 | 状态栏控件始终是一个控件。 |
IsOffscreenProperty | 依赖的对象 | 如果当前在屏幕上不可见,则状态栏控件将为此属性返回 True。 |
OrientationProperty | 依赖的对象 | 控件方向的值:水平或垂直。 |
IsKeyboardFocusableProperty | 错误 | 不适用 |
AcceleratorKeyProperty | Null |
状态栏不具有快捷键。 |
必需的 UI 自动化控件模式
下表列出了需要由状态栏控件支持的 UI 自动化控件模式。 有关控件模式的详细信息,请参阅 UI Automation Control Patterns Overview。
控件模式 | 支持 | 说明 |
---|---|---|
IGridProvider | 可选 | 状态栏控件应支持“网格”控件模式,以便监视各个部分并可轻松引用信息。 |
必需的 UI 自动化事件
下表列出了需要由所有状态栏控件支持的 UI 自动化事件。 有关事件的详细信息,请参阅 UI Automation Events Overview。
UI 自动化事件 | 支持 | 说明 |
---|---|---|
BoundingRectangleProperty 属性更改事件。 | 必需 | 无 |
IsOffscreenProperty 属性更改事件。 | 必需 | 无 |
IsEnabledProperty 属性更改事件。 | 必需 | 无 |
AutomationFocusChangedEvent | 必须 | 无 |
StructureChangedEvent | 必须 | 无 |