Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Campo TextPattern.IsReadOnlyAttribute

 

Publicado: noviembre de 2016

Identifica el atributo IsReadOnly de un intervalo de texto.

Espacio de nombres:   System.Windows.Automation
Ensamblado:  UIAutomationClient (en UIAutomationClient.dll)

public static readonly AutomationTextAttribute IsReadOnlyAttribute

Este atributo representa el estado de sólo lectura del documento asociado al intervalo de texto de la llamada.

System_CAPS_noteNota

Si un documento o archivo es de sólo lectura, pero todavía puede modificarlo y guardar como otro archivo, el texto no se considera de sólo lectura.

Este identificador se usa por las aplicaciones de cliente de automatización de la interfaz de usuario. Proveedores de automatización de la interfaz de usuario deben usar el campo equivalente en TextPatternIdentifiers.

Los clientes de automatización de la interfaz de usuario obtienen el valor del atributo llamando GetAttributeValue.

Los valores para este atributo son de tipo Boolean. El valor predeterminado es false.

En el ejemplo siguiente se muestra cómo obtener un valor de atributo para un intervalo de texto en Bloc de notas de Microsoft.

System_CAPS_noteNota

Bloc de notas de Microsoft se usa como el proveedor de texto con fines de ejemplo sólo.Bloc de notas de Microsoft no se garantiza para admitir el valor del atributo que se solicita.

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());
    }
}

.NET Framework
Disponible desde 3.0
Volver al principio
Mostrar: