UI Automation 中所有Patterns

news2025/1/16 22:04:49

UI Automation 中,所有的自动化模式(Patterns)都定义在 System.Windows.Automation 命名空间中。这些模式用于描述控件的行为和交互方式,允许你与应用程序的 UI 进行自动化操作。每个模式都有其特定的功能,例如点击按钮、输入文本、选择菜单项等。

所有支持的自动化模式

以下是 UI Automation 中所有标准的自动化模式及其简要说明:

  1. InvokePattern

    • 用途:用于执行一个简单的操作,如点击按钮或链接。
    • 方法
      • Invoke():触发控件的默认操作。
  2. ValuePattern

    • 用途:用于获取或设置控件的值,如文本框、复选框等。
    • 属性
      • CurrentValue:获取当前值。
      • IsReadOnly:指示该控件是否只读。
    • 方法
      • SetValue(string value):设置控件的值。
  3. ScrollPattern

    • 用途:用于滚动控件的内容,如滚动条、列表框等。
    • 属性
      • HorizontalScrollPercent:水平滚动位置(百分比)。
      • VerticalScrollPercent:垂直滚动位置(百分比)。
      • HorizontallyScrollable:指示是否可以水平滚动。
      • VerticallyScrollable:指示是否可以垂直滚动。
    • 方法
      • Scroll(double horizontalAmount, double verticalAmount):滚动指定的距离。
      • SetScrollPercent(double horizontalPercent, double verticalPercent):将滚动位置设置为指定的百分比。
  4. SelectionPattern

    • 用途:用于管理控件中的选择项,如列表框、组合框等。
    • 属性
      • CanSelectMultiple:指示是否允许多选。
      • IsSelectionRequired:指示是否必须选择至少一项。
      • GetSelection():获取当前选中的项。
    • 方法
      • 无直接方法,但可以通过 SelectionItemPattern 来选择或取消选择项。
  5. ExpandCollapsePattern

    • 用途:用于展开或折叠控件,如树节点、菜单项等。
    • 属性
      • ExpandCollapseState:指示控件的当前状态(展开、折叠、部分展开等)。
    • 方法
      • Expand():展开控件。
      • Collapse():折叠控件。
  6. GridPattern

    • 用途:用于访问网格控件中的单元格,如表格、数据网格等。
    • 属性
      • RowCount:网格的行数。
      • ColumnCount:网格的列数。
    • 方法
      • GetItem(int row, int column):获取指定行列的单元格。
  7. GridItemPattern

    • 用途:用于获取网格单元格的行和列信息。
    • 属性
      • Row:单元格所在的行索引。
      • Column:单元格所在的列索引。
      • RowSpan:单元格跨越的行数。
      • ColumnSpan:单元格跨越的列数。
      • ContainingGrid:获取包含该单元格的网格控件。
  8. TablePattern

    • 用途:用于访问表格控件中的行和列标题。
    • 属性
      • RowHeaders:获取表格的行标题。
      • ColumnHeaders:获取表格的列标题。
    • 方法
      • 无直接方法,但可以通过 GridPatternGridItemPattern 来访问表格内容。
  9. TableItemPattern

    • 用途:用于获取表格单元格的行和列标题。
    • 属性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2277723.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

论文阅读:Searching for Fast Demosaicking Algorithms

今天介绍一篇有关去马赛克的工作,去马赛克是 ISP 流程里面非常重要的一个模块,可以说是将多姿多彩的大千世界进行色彩还原的重要一步。这篇工作探索的是如何从各种各样的去马赛克算法中,选择最佳的一种。 Abstract 本文提出了一种方法&…

nginx 修改内置 404 页面、点击劫持攻击。

1、在部署前端项目的目录下增加 404.html 页面:/opt/web/404.html。 2、在 nginx 配置中增加 404 配置: root /opt/web; # 设置根目录的配置error_page 404 404.html; location /404.html {root /opt/web;# 指定 404 页面所在的根目录internal;# 确保…

金融项目实战 04|JMeter实现自动化脚本接口测试及持续集成

目录 一、⾃动化测试理论 二、自动化脚本 1、添加断言 1️⃣注册、登录 2️⃣认证、充值、开户、投资 2、可重复执行:清除测试数据脚本按指定顺序执行 1️⃣如何可以做到可重复执⾏? 2️⃣清除测试数据:连接数据库setup线程组 ①明确…

【SH】Xiaomi9刷Windows10系统研发记录 、手机刷Windows系统教程、小米9重装win10系统

文章目录 参考资料云盘资料软硬件环境手机解锁刷机驱动绑定账号和设备解锁手机 Mindows工具箱安装工具箱和修复下载下载安卓和woa资源包第三方Recovery 一键安装Windows准备工作创建分区安装系统 效果展示Windows和Android一键互换Win切换安卓安卓切换Win 删除分区 参考资料 解…

3 前端(上): Web开发相关概念 、HTML语法、CSS语法

文章目录 前言:导学1 Web开发相关概念2 Web标准(网页标准)3 软件架构(CS/BS)(1)C/S: Client/Server 客户端 / 服务器端(2)B/S: Browser/Server 浏览器 / 服务器端VSCode配置前段开发环境一、HTML概念1 概念2 HTML快速入门(1)语法快速入门(2)VSCode一个 !(快捷键…

Docker PG流复制搭建实操

目录标题 制作镜像1. 删除旧的容器2. 创建并配置容器3. 初始化数据库并启动 主库配置参数4. 配置主库5. 修改 postgresql.conf 配置 备库配置参数6. 创建并配置备库容器7. 初始化备库 流复制8. 配置&检查主库复制状态9. 检查备库配置 优化建议问题1:FATAL: usin…

【AIGC】SYNCAMMASTER:多视角多像机的视频生成

标题:SYNCAMMASTER: SYNCHRONIZING MULTI-CAMERA VIDEO GENERATION FROM DIVERSE VIEWPOINTS 主页:https://jianhongbai.github.io/SynCamMaster/ 代码:https://github.com/KwaiVGI/SynCamMaster 文章目录 摘要一、引言二、使用步骤2.1 TextT…

C++类与对象(一)—学习记录

序言:要想开发一款成功的应用程序,其开发者必须充分了解并实现用户的需求。作为一个设计良好的类,既要有直观且易于使用的接口,也必须具备高效的实现过程。 一、类与对象基本概念 面向对象程序设计的主要特点为抽象、封装、继承与…

【React】新建React项目

目录 create-react-app基础运用React核心依赖React 核心思想:数据驱动React 采用 MVC体系package.jsonindex.html好书推荐 官方提供了快速构建React 项目的脚手架: create-react-app ,目前使用它安装默认是19版本,我们这里降为18…

Jmeter数据库

jmeter之操作数据库 一、下载jdbc 驱动,安装jdbc驱动 2、将驱动存放在4个路径下 (1)C:\Program Files\Java\jre1.8.0_60\lib (2)第二个存放的包 C:\Program Files\Java\jre1.8.0_60\lib\ext (3&#xf…

nginx: [emerg] bind() to 0.0.0.0:80 failed 端口被占用

nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions) 查看被占用的端口 被系统占用了 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/HTTP 然后再进入nginx文件夹目录下…

《C++11》深入剖析正则表达式库:解锁文本处理的高效之道

在现代编程领域,文本处理是一项不可或缺的任务,而正则表达式无疑是这一领域的强大利器。C11标准库的引入,为C开发者带来了正则表达式库,极大地丰富了C在文本处理方面的能力。本文将全方位、多角度地深入探讨C11正则表达式库&#…

c语言----------内存管理

内存管理 目录 一。作用域1.1 局部变量1.2 静态(static)局部变量1.3 全局变量1.4 静态(static)全局变量1.5 extern全局变量声明1.6 全局函数和静态函数1.7 总结 二。内存布局2.1 内存分区2.2 存储类型总结2.3内存操作函数1) memset()2) memcpy()3) memmove()4) memcmp() 2.4 堆…

机器学习-归一化

文章目录 一. 归一化二. 归一化的常见方法1. 最小-最大归一化 (Min-Max Normalization)2. Z-Score 归一化(标准化)3. MaxAbs 归一化 三. 归一化的选择四. 为什么要进行归一化1. 消除量纲差异2. 提高模型训练速度3. 增强模型的稳定性4. 保证正则化项的有效…

STC的51单片机LED点灯基于KEIL

前言: 该文源于回答一个朋友的问题,代码为该朋友上传,略作修改,在此说明问题以及解决问题的思路,以减少新手错误。 电路图: 该位朋友未上传电路图,说明如下: stc8g1k08a-sop8控制…

手撕Transformer -- Day6 -- DecoderBlock

手撕Transformer – Day6 – DecoderBlock 目录 手撕Transformer -- Day6 -- DecoderBlockTransformer 网络结构图DecoderBlock 代码Part1 库函数Part2 实现一个解码器Block,作为一个类Part3 测试 参考 Transformer 网络结构图 Transformer 网络结构 DecoderBlock 代…

【功能测试总结】

功能测试 1. 功能测试用例1.1 设计用例容易出现的问题 2. 如何写用例2.1 什么是好的用例2.2 测试用例设计常见方法 3. 用例分级 1. 功能测试用例 1.1 设计用例容易出现的问题 基础功能点用例覆盖不全/描述不清 描述不清 什么是正常内容,仅看用例能否知道该输入什么…

Mac玩Steam游戏秘籍!

Mac玩Steam游戏秘籍! 大家好!最近有不少朋友在用MacBook玩Steam游戏时遇到不支持mac的问题。别担心,我来教你如何用第三方工具Crossover来畅玩这些不支持的游戏,简单又实用! 第一步:下载Crossover 首先&…

基于Springboot + vue实现的旅游网站

🥂(❁◡❁)您的点赞👍➕评论📝➕收藏⭐是作者创作的最大动力🤞 💖📕🎉🔥 支持我:点赞👍收藏⭐️留言📝欢迎留言讨论 🔥🔥&…

题解 CodeForces 430B Balls Game 栈 C/C++

题目传送门: Problem - B - Codeforceshttps://mirror.codeforces.com/contest/430/problem/B翻译: Iahub正在为国际信息学奥林匹克竞赛(IOI)做准备。有什么比玩一个类似祖玛的游戏更好的训练方法呢? 一排中有n个球…