Freigeben über


TextPattern.IsReadOnlyAttribute Feld

Definition

Bezeichnet das IsReadOnly-Attribut eines Textbereichs.

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

Feldwert

AutomationTextAttribute

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie einen Attributwert für einen Textbereich in Microsoft Editor abrufen.

Hinweis

Microsoft Editor wird beispielsweise nur als Textanbieter verwendet. Microsoft Editor ist nicht garantiert, den angeforderten Attributwert zu unterstützen.

private void GetIsReadOnlyAttribute()
{
    // 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.IsReadOnlyAttribute);
    if (oAttribute == TextPattern.MixedAttributeValue)
    {
        Console.WriteLine("Mixture of readonly and non-readonly.");
    }
    else
    {
        Console.WriteLine(oAttribute.ToString());
    }
}
Private Sub GetIsReadOnlyAttribute()
    ' 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.IsReadOnlyAttribute)
    If (oAttribute = TextPattern.MixedAttributeValue) Then
        Console.WriteLine("Mixture of readonly and non-readonly.")
    Else
        Console.WriteLine(oAttribute.ToString())
    End If
End Sub

Hinweise

Dieses Attribut stellt den schreibgeschützten Zustand des Dokuments dar, das dem aufruften Textbereich zugeordnet ist.

Hinweis

Wenn ein Dokument oder eine Datei schreibgeschützt ist, sie jedoch weiterhin bearbeiten und als andere Datei speichern können, wird der Text nicht als schreibgeschützt betrachtet.

Dieser Bezeichner wird von Benutzeroberflächenautomatisierung Clientanwendungen verwendet. Benutzeroberflächenautomatisierung Anbieter sollten das entsprechende Feld in TextPatternIdentifiersverwenden.

Benutzeroberflächenautomatisierung Clients erhalten den Wert des Attributs durch Aufrufen GetAttributeValue.

Werte für dieses Attribut sind vom Typ Boolean. Der Standardwert ist false.

Gilt für

Siehe auch