如何将GridPattern提供给自定义控件

时间:2015-09-24 11:41:57

标签: c# datagridview ui-automation microsoft-ui-automation

我们有一个源自DataGridView

的自定义控件

现在我想编写一个自动化测试,点击此DataGridView的一行。 我正在使用 Microsoft UI Automation

不幸的是,GridPattern不可用,因为它是自定义控件......

如何使用Microsoft UI Automation使此自定义控件可测试?

我是否必须实施IGridProvider?如果是,我该怎么做呢?

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

根据此https://msdn.microsoft.com/en-us/library/ms744822(v=vs.110).aspx DataGridView只能通过microsoft active accessibility支持。所以看起来你需要实现IGridProvider和IGridItemProvider。

这些专题文章讨论了一般实现自定义属性和提供程序

Part 1 UIA-CustomPatterns

Part 2 UIA-CustomPatterns

Part 3 UIA-CustomPatterns

Part 4 UIA-CustomPatterns

然后,您需要实现IGridProvder,然后对网格中的项目实施IGridItemProvider