次の方法で共有


TextPattern.UnderlineColorAttribute フィールド

定義

テキスト範囲の UnderlineColor 属性を識別します。

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

フィールド値

AutomationTextAttribute

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

注意

Microsoft メモ帳 は、例としてのみテキスト プロバイダーとして使用されます。 Microsoft メモ帳 は、要求されている属性値をサポートするとは限りません。

private void GetUnderlineColorAttribute()
{
    // 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.UnderlineColorAttribute);
    if (oAttribute == TextPattern.MixedAttributeValue)
    {
        Console.WriteLine("Mixed underline colors.");
    }
    else
    {
        Console.WriteLine(oAttribute.ToString());
    }
}
Private Sub GetUnderlineColorAttribute()
    ' 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.UnderlineColorAttribute)
    If (oAttribute = TextPattern.MixedAttributeValue) Then
        Console.WriteLine("Mixed underline colors.")
    Else
        Console.WriteLine(oAttribute.ToString())
    End If
End Sub

注釈

この識別子は、クライアント アプリケーションUI オートメーション使用されます。 UI オートメーション プロバイダーでは、同等のフィールドTextPatternIdentifiersを使用する必要があります。

クライアントUI オートメーション呼び出GetAttributeValueすことによって属性の値を取得します。

この属性の値は型 Int32です。 既定値は zero です。

適用対象

こちらもご覧ください