2013-02-21 48 views
5

在WinForms應用程序中,可以使用Control.AccessibleName property爲輔助功能客戶端命名控件。AccesibleName屬性的WPF等效項

WPF控件缺乏這個屬性,所以我想知道如何給WPF應用程序中的控件提供可訪問的名稱。


我讀過的文檔和我知道這一切與UIA改變,但我仍然無法找到一個方法來改變這種屬性。正如doc指出,有兩個必需的屬性:

  • 名稱
  • 自動化ID

我能找到Automation ID但不是名字。它隱藏在哪裏?

+0

什麼是可訪問的名稱? – sll 2013-02-21 15:49:37

+1

您的答案應該在這裏:http://msdn.microsoft.com/en-us/library/windows/desktop/gg712258.aspx – Pete 2013-02-21 15:49:43

+0

http://msdn.microsoft.com/en-us/library/system.windows .forms.control.accessiblename(v = vs.71).aspx – phadaphunk 2013-02-21 15:49:53

回答

5

AutomationProperties.Name是您正在查找的附屬資產。

您可以在XAML直接指定:

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

或者使用的getter/setter方法上AutomationProperties:

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

......或者......

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