TextPattern.CultureAttribute フィールド

定義

テキスト範囲の Culture (CultureInfo) 属性を、フランス語 (fr) ではなく French-Switzerland (fr-CH) など、サブ言語レベルまで識別します。

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 

フィールド値

次の例は、メモ帳でテキスト範囲の属性値Microsoft取得する方法を示しています。

Note

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 を参照してください。

Note

サーバーが言語タグをサポートしていない場合や、作成者が言語タグを使用できない場合があります。 このような場合は、既定値が適用されます。

適用対象

こちらもご覧ください