Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Para ajudar os usuários a inserir dados usando o teclado virtual ou o SIP (Painel de Entrada Flexível), você pode definir o escopo de entrada do controle de texto para corresponder ao tipo de dados que o usuário deve inserir.
APIs importantes
- InputScope
- InputScopeNameValue
O teclado virtual pode ser usado para entrada de texto quando seu aplicativo é executado em um dispositivo com tela sensível ao toque. O teclado tátil é invocado quando o utilizador toca num campo de entrada editável, como um TextBox ou RichEditBox. Você pode tornar muito mais rápido e fácil para os usuários inserir dados em seu aplicativo definindo o escopo de entrada do controle de texto para corresponder ao tipo de dados que você espera que o usuário insira. O escopo de entrada fornece uma dica para o sistema sobre o tipo de entrada de texto esperado pelo controle para que o sistema possa fornecer um layout de teclado virtual especializado para o tipo de entrada.
Por exemplo, se uma caixa de texto for usada apenas para inserir um PIN de 4 dígitos, defina a propriedade InputScope como Number. Esta instrução ordena ao sistema para mostrar o layout do teclado numérico, o que torna mais fácil para o utilizador inserir o PIN.
Importante
- Esta informação aplica-se apenas ao SIP. Não se aplica a teclados de hardware ou ao teclado virtual disponível nas opções de Facilidade de Acesso do Windows.
- O escopo de entrada não faz com que nenhuma validação de entrada seja executada e não impede que o usuário forneça qualquer entrada por meio de um teclado de hardware ou outro dispositivo de entrada. Você ainda é responsável por validar a entrada em seu código, conforme necessário.
Alterando o escopo de entrada de um controle de texto
Os escopos de entrada disponíveis para a sua aplicação são membros da enumeração InputScopeNameValue. Você pode definir a propriedade InputScope de um TextBox ou RichEditBox para um desses valores.
Importante
A propriedade InputScope em PasswordBox suporta apenas os valores Password e NumericPin. Qualquer outro valor é ignorado.
Aqui, você altera o escopo de entrada de várias caixas de texto para corresponder aos dados esperados para cada caixa de texto.
Para alterar o escopo de entrada no XAML
No arquivo XAML da sua página, localize a marca do controle de texto que você deseja alterar.
Adicione o atributo InputScope à tag e especifique o valor InputScopeNameValue que corresponda à entrada esperada.
Aqui estão algumas caixas de texto que podem aparecer em um formulário comum de contato do cliente. Com o InputScope definido, um teclado tátil com um layout apropriado para os dados é exibido em cada caixa 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 alterar o escopo de entrada no código
No arquivo XAML da sua página, localize a marca do controle de texto que você deseja alterar. Se não estiver definido, defina o atributo x:Name para que você possa fazer referência ao controle em seu código.
<TextBox Header="Telephone Number" x:Name="phoneNumberTextBox"/>Instancie um novo objeto InputScope.
InputScope scope = new InputScope();Instancie um novo InputScopeName objeto.
InputScopeName scopeName = new InputScopeName();Defina a propriedade NameValue do objeto InputScopeName para um valor da enumeração InputScopeNameValue.
scopeName.NameValue = InputScopeNameValue.TelephoneNumber;Adicione o objeto InputScopeName à coleção Names do objeto InputScope.
scope.Names.Add(scopeName);Defina o objeto InputScope como o valor da propriedade InputScope do controlo de texto.
phoneNumberTextBox.InputScope = scope;
Aqui está o código todo junto.
InputScope scope = new InputScope();
InputScopeName scopeName = new InputScopeName();
scopeName.NameValue = InputScopeNameValue.TelephoneNumber;
scope.Names.Add(scopeName);
phoneNumberTextBox.InputScope = scope;
Os mesmos passos podem ser condensados neste código abreviado.
phoneNumberTextBox.InputScope = new InputScope()
{
Names = {new InputScopeName(InputScopeNameValue.TelephoneNumber)}
};
Previsão de texto, verificação ortográfica e correção automática
Os controles TextBox e RichEditBox têm várias propriedades que influenciam o comportamento do SIP. Para fornecer a melhor experiência para seus usuários, é importante entender como essas propriedades afetam a entrada de texto usando o toque.
IsSpellCheckEnabled—Quando a verificação ortográfica está habilitada para um controle de texto, o controle interage com o mecanismo de verificação ortográfica do sistema para marcar palavras que não são reconhecidas. Você pode tocar em uma palavra para ver uma lista de correções sugeridas. A verificação ortográfica está ativada por predefinição.
Para o escopo de entrada padrão , essa propriedade também permite a capitalização automática da primeira palavra numa frase e a correção automática de palavras enquanto escreve. Esses recursos de correção automática podem ser desativados em outros escopos de entrada. Para obter mais informações, consulte as tabelas mais adiante neste tópico.
IsTextPredictionEnabled—Quando a previsão de texto está habilitada para um controle de texto, o sistema mostra uma lista de palavras que você pode estar começando a digitar. Você pode selecionar na lista para não precisar digitar a palavra inteira. A previsão de texto está habilitada por padrão.
A previsão de texto pode ser desativada se o escopo de entrada for diferente de Padrão, mesmo que a propriedade IsTextPredictionEnabled seja verdadeira. Para obter mais informações, consulte as tabelas mais adiante neste tópico.
PreventKeyboardDisplayOnProgrammaticFocus—Quando essa propriedade é true, ela impede que o sistema mostre o SIP quando o foco é programaticamente definido em um controle de texto. Em vez disso, o teclado é mostrado somente quando o usuário interage com o controle.
Índice de teclado tátil para Windows
Estas tabelas mostram os layouts do Windows Soft Input Panel (SIP) para valores comuns de escopo de entrada. O efeito do escopo de entrada nas funcionalidades ativadas pelas propriedades IsSpellCheckEnabled e IsTextPredictionEnabled é listado para cada escopo de entrada. Esta não é uma lista abrangente de escopos de entrada disponíveis.
Sugestão
Você pode alternar a maioria dos teclados de toque entre um layout alfabético e um layout de números e símbolos pressionando a tecla &123 para alterar para o layout de números e símbolos e pressionando a tecla abcd para mudar para o layout alfabético.
Predefinido
<TextBox InputScope="Default"/>
O teclado tátil predefinido do Windows.
- Verificação ortográfica: ativada se IsSpellCheckEnabled = true, desativada se IsSpellCheckEnabled = false
- Auto-correção: ativada se IsSpellCheckEnabled = verdadeiro, desativada se IsSpellCheckEnabled = falso
- Capitalização automática: ativada se IsSpellCheckEnabled = verdadeiro, desativada se IsSpellCheckEnabled = falso
- Previsão de texto: ativado se IsTextPredictionEnabled = true , desabilitado se IsTextPredictionEnabled = falso
MontanteECódigoDaMoeda
<TextBox InputScope="CurrencyAmountAndSymbol"/>
O layout de teclado de números e símbolos padrão.
moeda
- Inclui teclas esquerda/direita da página para mostrar mais símbolos
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: sempre desativada
- Previsão de texto: ativado por padrão, pode ser desativado
Endereço URL
<TextBox InputScope="Url"/>
- Inclui as teclas .com e
(Go). Pressione e segure a tecla .com para exibir opções adicionais (.org, .nete sufixos específicos da região) - Inclui as teclas :, -e /
- Verificação ortográfica: desativada por padrão, pode ser ativada
- Auto-correção: desligado por padrão, pode ser ativado
- Capitalização automática: desativada por padrão, pode ser ativada
- Previsão de texto: desativado por padrão, pode ser ativado
Endereço electrónicoSmtpAddress
<TextBox InputScope="EmailSmtpAddress"/>
- Inclui as teclas @ e .com. Pressione e segure a tecla .com para exibir opções adicionais (.org, .nete sufixos específicos da região)
- Inclui as teclas _ e -
- Verificação ortográfica: desativada por padrão, pode ser ativada
- Auto-correção: desligado por padrão, pode ser ativado
- Capitalização automática: desativada por padrão, pode ser ativada
- Previsão de texto: desativado por padrão, pode ser ativado
Número
<TextBox InputScope="Number"/>
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: sempre desativada
- Previsão de texto: ativado por padrão, pode ser desativado
Número de telefone
<TextBox InputScope="TelephoneNumber"/>
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: sempre desativada
- Previsão de texto: ativado por padrão, pode ser desativado
Pesquisa
<TextBox InputScope="Search"/>
- Inclui a tecla Search em vez da tecla Enter
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: sempre desativada
- Previsão de texto: ativado por padrão, pode ser desativado
SearchIncremental
<TextBox InputScope="SearchIncremental"/>
- O mesmo layout que padrão
- Verificação ortográfica: desativada por padrão, pode ser ativada
- Auto-correção: sempre desativado
- Capitalização automática: sempre desativada
- Previsão de texto: sempre desativado
Formula
<TextBox InputScope="Formula"/>
- Inclui a chave =
- Também inclui as teclas %, $e +
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: sempre desativada
- Previsão de texto: ativado por padrão, pode ser desativado
Chat
<TextBox InputScope="Chat"/>
- O mesmo layout que padrão
- Verificação ortográfica: ativada por padrão, pode ser desativada
- Auto-correção: ativado por padrão, pode ser desativado
- Capitalização automática: ativada por padrão, pode ser desativada
- Previsão de texto: ativado por padrão, pode ser desativado
NomeOuNúmeroDeTelefone
<TextBox InputScope="NameOrPhoneNumber"/>
- O mesmo layout que padrão
- Verificação ortográfica: desativada por padrão, pode ser ativada
- Auto-correção: desligado por padrão, pode ser ativado
- Capitalização automática: desativada por padrão, pode ser ativada (a primeira letra de cada palavra é maiúscula)
- Previsão de texto: desativado por padrão, pode ser ativado
Windows developer