Compartir a través de


Usar el ámbito de entrada para cambiar el teclado táctil

Para ayudar a los usuarios a escribir datos con el teclado táctil o con el panel de entrada de software (SIP), puedes establecer el ámbito de entrada del control de texto para que coincida con el tipo de datos que se espera que escriba el usuario.

API importantes

  • inputScope de
  • ValorNombreÁmbitoDeEntrada

El teclado táctil se puede usar para la entrada de texto cuando la aplicación se ejecuta en un dispositivo con una pantalla táctil. El teclado táctil se invoca cuando el usuario pulsa en un campo de entrada editable, como textBox o RichEditBox. Puede hacer que sea mucho más rápido y fácil para que los usuarios escriban datos en la aplicación estableciendo el ámbito de entrada del control de texto para que coincida con el tipo de datos que espera que el usuario escriba. El ámbito de entrada proporciona una sugerencia al sistema sobre el tipo de entrada de texto esperado por el control para que el sistema pueda proporcionar un diseño de teclado táctil especializado para el tipo de entrada.

Por ejemplo, si un cuadro de texto solo se usa para escribir un PIN de 4 dígitos, establezca la propiedad InputScope en Number. Esto indica al sistema que muestre el diseño del teclado numérico, lo que facilita al usuario escribir el PIN.

Importante

  • Esta información solo se aplica al SIP. No se aplica a los teclados de hardware ni al teclado en pantalla disponible en las opciones de facilidad de acceso de Windows.
  • El ámbito de entrada no hace que se realice ninguna validación de entrada y no impide que el usuario proporcione ninguna entrada a través de un teclado de hardware u otro dispositivo de entrada. Todavía eres responsable de validar la entrada en tu código según sea necesario.

Cambio del ámbito de entrada de un control de texto

Los ámbitos de entrada que están disponibles para tu aplicación son miembros de la enumeración InputScopeNameValue. Puede establecer la propiedad InputScope de un TextBox o de un RichEditBox en uno de estos valores.

Importante

La propiedad InputScope del PasswordBox de soporta solo los valores de Contraseña y Pin Numérico. Se omite cualquier otro valor.

Aquí, cambiará el ámbito de entrada de varios cuadros de texto para que coincidan con los datos esperados para cada cuadro de texto.

Para cambiar el ámbito de entrada en XAML

  1. En el archivo XAML de la página, busque la etiqueta del control de texto que desea cambiar.

  2. Agregue el atributo InputScope a la etiqueta y especifique el valor InputScopeNameValue que coincide con la entrada esperada.

    Estos son algunos cuadros de texto que pueden aparecer en un formulario común de contacto del cliente. Con el conjunto de InputScope, se muestra un teclado táctil con un diseño adecuado para los datos en cada cuadro de texto.

    <StackPanel Width="300">
        <TextBox Header="Name" InputScope="Default"/>
        <TextBox Header="Email Address" InputScope="EmailSmtpAddress"/>
        <TextBox Header="Telephone Number" InputScope="TelephoneNumber"/>
        <TextBox Header="Web site" InputScope="Url"/>
    </StackPanel>
    

Para cambiar el contexto de entrada en el código

  1. En el archivo XAML de la página, busque la etiqueta del control de texto que desea cambiar. Si no se establece, establezca el atributo x:Name para que pueda hacer referencia al control en tu código.

    <TextBox Header="Telephone Number" x:Name="phoneNumberTextBox"/>
    
  2. Cree una instancia de un nuevo objeto InputScope .

    InputScope scope = new InputScope();
    
  3. Cree una instancia de un nuevo objeto InputScopeName .

    InputScopeName scopeName = new InputScopeName();
    
  4. Establezca la propiedad NameValue del objeto InputScopeName a un valor de la enumeración InputScopeNameValue.

    scopeName.NameValue = InputScopeNameValue.TelephoneNumber;
    
  5. Agregue el objeto InputScopeName a la colección Names del objeto InputScope.

    scope.Names.Add(scopeName);
    
  6. Establezca el objeto InputScope como valor de la propiedad InputScope del control de entrada de texto.

    phoneNumberTextBox.InputScope = scope;
    

Aquí está el código completo.

InputScope scope = new InputScope();
InputScopeName scopeName = new InputScopeName();
scopeName.NameValue = InputScopeNameValue.TelephoneNumber;
scope.Names.Add(scopeName);
phoneNumberTextBox.InputScope = scope;

Los mismos pasos se pueden condensar en este código abreviado.

phoneNumberTextBox.InputScope = new InputScope() 
{
    Names = {new InputScopeName(InputScopeNameValue.TelephoneNumber)}
};

Predicción de texto, revisión ortográfica y corrección automática

Los controles TextBox y RichEditBox tienen varias propiedades que influyen en el comportamiento del SIP. Para proporcionar la mejor experiencia para los usuarios, es importante comprender cómo afectan estas propiedades a la entrada de texto mediante la entrada táctil.

  • IsSpellCheckEnabled: cuando la revisión ortográfica está habilitada para un control de texto, el control interactúa con el motor de revisión ortográfica del sistema para marcar palabras que no se reconocen. Puede pulsar una palabra para ver una lista de correcciones sugeridas. La revisión ortográfica está habilitada de forma predeterminada.

    Para el ámbito de entrada predeterminado, esta propiedad también habilita la mayúscula automática de la primera palabra en una oración y la corrección automática de palabras a medida que se escribe. Estas características de corrección automática pueden deshabilitarse en otros ámbitos de entrada. Para obtener más información, consulte las tablas más adelante en este tema.

  • IsTextPredictionEnabled— cuando la predicción de texto está habilitada para un control de texto, el sistema muestra una lista de palabras que podría estar comenzando a escribir. Puede seleccionar en la lista para que no tenga que escribir toda la palabra. La predicción de texto está habilitada de forma predeterminada.

    La predicción de texto podría deshabilitarse si el ámbito de entrada no es el Predeterminado, incluso si la propiedad IsTextPredictionEnabled es verdadera. Para obtener más información, consulte las tablas más adelante en este tema.

  • PreventKeyboardDisplayOnProgrammaticFocus—cuando esta propiedad es true, impide que el sistema muestre el SIP cuando el enfoque se establece mediante programación en un control de texto. En su lugar, el teclado solo se muestra cuando el usuario interactúa con el control.

Índice de teclado táctil para Windows

Estas tablas muestran los diseños del Panel de Entrada Suave (SIP) de Windows para valores comunes de ámbitos de entrada. El efecto del ámbito de entrada en las características habilitadas por las propiedades IsSpellCheckEnabled y IsTextPredictionEnabled se muestra para cada ámbito de entrada. Esta no es una lista completa de los ámbitos de entrada disponibles.

Sugerencia

Puedes alternar la mayoría de los teclados táctiles entre un diseño alfabético y un diseño de números y símbolos presionando la tecla &123 para cambiar al diseño de números y símbolos, y presiona la tecla abcd para cambiar al diseño alfabético.

Predeterminado

<TextBox InputScope="Default"/>

Teclado táctil predeterminado de Windows.

Windowsteclado táctil predeterminado

  • Revisión ortográfica: habilitado si IsSpellCheckEnabled = true, deshabilitado si IsSpellCheckEnabled = false
  • Corrección automática: habilitado si IsSpellCheckEnabled = verdadero, deshabilitado si IsSpellCheckEnabled = falso
  • Capitalización automática: habilitado si IsSpellCheckEnabled = verdadero, deshabilitado si IsSpellCheckEnabled = falso
  • Predicción de texto: habilitado si IsTextPredictionEnabled = verdadero, deshabilitado si IsTextPredictionEnabled = falso

CantidadMonetariaYSímbolo

<TextBox InputScope="CurrencyAmountAndSymbol"/>

Los números predeterminados y el diseño del teclado de símbolos.

teclado táctil de Windows para moneda

  • Incluye las teclas izquierda o derecha de la página para mostrar más símbolos
  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Uso automático de mayúsculas: siempre deshabilitado
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

URL

<TextBox InputScope="Url"/>

Teclado táctil de Windows para direcciones URL

  • Incluye las teclas .com y las teclas ir (Go). Mantenga presionada la tecla .com para mostrar opciones adicionales (.org, .net y sufijos específicos de la región)
  • Incluye las claves :, -y /
  • Revisión ortográfica: desactivada de forma predeterminada, se puede habilitar.
  • Corrección automática: desactivada de forma predeterminada, se puede habilitar.
  • Mayúsculas automáticas: desactivada de forma predeterminada, se puede habilitar.
  • Predicción de texto: desactivada de forma predeterminada, se puede habilitar.

DirecciónDeCorreoSmtp

<TextBox InputScope="EmailSmtpAddress"/>

Teclado táctil de Windows para direcciones de correo electrónico

  • Incluye las teclas .com @, , y. Mantenga presionada la tecla .com para mostrar opciones adicionales (.org, .net y sufijos específicos de la región)
  • Incluye las claves _ y -
  • Revisión ortográfica: desactivada de forma predeterminada, se puede habilitar.
  • Corrección automática: desactivada de forma predeterminada, se puede habilitar.
  • Mayúsculas automáticas: desactivada de forma predeterminada, se puede habilitar.
  • Predicción de texto: desactivada de forma predeterminada, se puede habilitar.

Número

<TextBox InputScope="Number"/>

Teclado táctil de Windows para números

  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Uso automático de mayúsculas: siempre deshabilitado
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

Número de Teléfono

<TextBox InputScope="TelephoneNumber"/>

Teclado táctil de Windows para números de teléfono

  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Uso automático de mayúsculas: siempre deshabilitado
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

<TextBox InputScope="Search"/>

Teclado táctil de Windows para la búsqueda

  • Incluye la clave de búsqueda de en lugar de la tecla Entrar
  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Mayúsculas automáticas: siempre desactivadas
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

SearchIncremental

<TextBox InputScope="SearchIncremental"/>

teclado táctil de Windows para en búsqueda incremental

  • Mismo diseño que Predeterminado
  • Revisión ortográfica: desactivada de forma predeterminada, se puede habilitar.
  • Corrección automática: siempre deshabilitado
  • Uso automático de mayúsculas: siempre deshabilitado
  • Predicción de texto: siempre deshabilitado

Fórmula

<TextBox InputScope="Formula"/>

teclado táctil de Windows para fórmulas

  • Incluye la tecla =
  • También incluye las %, las $, y las + claves
  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Uso automático de mayúsculas: siempre deshabilitado
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

El chat

<TextBox InputScope="Chat"/>

Windowsteclado táctil predeterminado

  • Mismo diseño que Predeterminado
  • Revisión ortográfica: activado de forma predeterminada, se puede deshabilitar.
  • Corrección automática: de forma predeterminada, se puede deshabilitar
  • Mayúsculas automáticas: activado de forma predeterminada, se puede deshabilitar.
  • Predicción de texto: activado de forma predeterminada, se puede deshabilitar

NombreONúmeroDeTeléfono

<TextBox InputScope="NameOrPhoneNumber"/>

Windowsteclado táctil predeterminado

  • Mismo diseño que Predeterminado
  • Revisión ortográfica: desactivada de forma predeterminada, se puede habilitar.
  • Corrección automática: desactivada de forma predeterminada, se puede habilitar.
  • Mayúsculas automáticas: desactivada de forma predeterminada, se puede habilitar (la primera letra de cada palabra está en mayúsculas)
  • Predicción de texto: desactivada de forma predeterminada, se puede habilitar.