等效于AccesibleName属性的WPF

本文关键字:WPF 属性 AccesibleName | 更新日期: 2023-09-27 18:00:28

在WinForms应用程序中,可以使用Control.AccessibleName属性为辅助功能客户端命名控件。

WPF控件缺少此属性,所以我想知道如何为WPF应用程序中的控件提供一个可访问的名称。


我已经阅读了文档,我知道UIA改变了一切,但我仍然找不到改变这个属性的方法。如文档中所述,有两个必需属性:

  • 名称
  • 自动化ID

我能找到Automation ID,但找不到它的名字。它藏在哪里?

等效于AccesibleName属性的WPF

AutomationProperties.Name是您要查找的附加属性。

您可以直接在XAML中指定它:

<object AutomationProperties.Name="name" .../>

或者使用AutomationProperties上的getter/setters:

using System.Windows.Automation;
...
AutomationProperties.SetName(control, "name");

control.SetValue(AutomationProperties.NameProperty, "name");