TextPattern.CultureAttribute 字段

定义

标识细化到子语言级别的文本范围的 Culture (CultureInfo) 特性;例如,瑞士法语 (fr-CH),而不是法语 (fr)。

public: static initonly System::Windows::Automation::AutomationTextAttribute ^ CultureAttribute;
public static readonly System.Windows.Automation.AutomationTextAttribute CultureAttribute;
 staticval mutable CultureAttribute : System.Windows.Automation.AutomationTextAttribute
Public Shared ReadOnly CultureAttribute As AutomationTextAttribute 

字段值

AutomationTextAttribute

示例

以下示例演示如何获取 Microsoft 记事本中文本范围的属性值。

备注

Microsoft 记事本仅用于文本提供程序。 不能保证 Microsoft 记事本支持所请求的属性值。

private void GetCultureAttribute()
{
    // Start application.
    Process p = Process.Start("Notepad.exe", "text.txt");

    // target --> The root AutomationElement.
    AutomationElement target = AutomationElement.FromHandle(p.MainWindowHandle);

    // Specify the control type we're looking for, in this case 'Document'
    PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);

    AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);

    TextPattern textpatternPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;

    if (textpatternPattern == null)
    {
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
        return;
    }

    Object oAttribute = textpatternPattern.DocumentRange.GetAttributeValue(TextPattern.CultureAttribute);
    if (oAttribute == TextPattern.MixedAttributeValue)
    {
        Console.WriteLine("Mixed culture info.");
    }
    else
    {
        Console.WriteLine(oAttribute.ToString());
    }
}
Private Sub GetCultureAttribute()
    ' Start application.
    Dim p As Process = Process.Start("Notepad.exe", "text.txt")

    ' target --> The root AutomationElement.
    Dim target As AutomationElement = AutomationElement.FromHandle(p.MainWindowHandle)

    ' Specify the control type we're looking for, in this case 'Document'
    Dim cond As PropertyCondition = New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document)

    Dim textProvider As AutomationElement = target.FindFirst(TreeScope.Descendants, cond)

    Dim textpatternPattern As TextPattern = CType(textProvider.GetCurrentPattern(TextPattern.Pattern), TextPattern)

    If (textpatternPattern Is Nothing) Then
        Console.WriteLine("Root element does not contain a descendant that supports TextPattern.")
        Return
    End If

    Dim oAttribute As Object = textpatternPattern.DocumentRange.GetAttributeValue(TextPattern.CultureAttribute)
    If (oAttribute = TextPattern.MixedAttributeValue) Then
        Console.WriteLine("Mixed culture info.")
    Else
        Console.WriteLine(oAttribute.ToString())
    End If
End Sub

注解

此标识符由UI 自动化客户端应用程序使用。 UI 自动化提供程序应使用等效字段。TextPatternIdentifiers

UI 自动化客户端通过调用GetAttributeValue获取特性的值。

此属性的值的类型 CultureInfo。 默认值是应用程序用户界面的语言。

有关语言代码格式的详细信息,请参阅 CultureInfo

备注

在某些情况下,服务器不支持语言标记,或者作者无法使用它。 在这些情况下,默认适用。

适用于

另请参阅