Como selecionar texto no controle TextBox dos Windows Forms
Você pode selecionar texto programaticamente no controle Windows Forms TextBox . Por exemplo, se você criar uma função que pesquisa de texto de uma determinada cadeia de caracteres, poderá selecionar o texto para alertar visualmente o leitor da posição da cadeia de caracteres encontrada.
Selecionar texto com programação
Defina a SelectionStart propriedade como o início do texto que você deseja selecionar.
A SelectionStart propriedade é um número que indica o ponto de inserção dentro da cadeia de caracteres de texto, com 0 sendo a posição mais à esquerda. Se a SelectionStart propriedade for definida como um valor igual ou maior que o número de caracteres na caixa de texto, o ponto de inserção será colocado após o último caractere.
Defina a SelectionLength propriedade como o comprimento do texto que você deseja selecionar.
A SelectionLength propriedade é um valor numérico que define a largura do ponto de inserção. Definir o para um número maior que 0 faz com que esse SelectionLength número de caracteres seja selecionado, a partir do ponto de inserção atual.
(Opcional) Acesse o texto selecionado por meio da SelectedText propriedade.
O código abaixo seleciona o conteúdo de uma caixa de texto quando o evento do Enter controle ocorre. Este exemplo verifica se a caixa de texto tem um valor para a Text propriedade que não
null
é ou uma cadeia de caracteres vazia. Quando a caixa de texto recebe o foco, o texto presente nela é selecionado. O manipulador de eventosTextBox1_Enter
deve ser associado ao controle; para obter mais informações, consulte Como criar manipuladores de eventos no tempo de execução para Windows Forms.Para testar esse exemplo, pressione a tecla Tab até que a caixa de texto receber o foco. Se você clicar na caixa de texto, a seleção dele será cancelada.
Private Sub TextBox1_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Enter If (Not String.IsNullOrEmpty(TextBox1.Text)) Then TextBox1.SelectionStart = 0 TextBox1.SelectionLength = TextBox1.Text.Length End If End Sub
private void textBox1_Enter(object sender, System.EventArgs e){ if (!String.IsNullOrEmpty(textBox1.Text)) { textBox1.SelectionStart = 0; textBox1.SelectionLength = textBox1.Text.Length; } }
private: void textBox1_Enter(System::Object ^ sender, System::EventArgs ^ e) { if (!System::String::IsNullOrEmpty(textBox1->Text)) { textBox1->SelectionStart = 0; textBox1->SelectionLength = textBox1->Text->Length; } }
Confira também
- TextBox
- Visão geral do controle TextBox
- Como controlar o ponto de inserção em um controle TextBox do Windows Forms
- Como criar uma caixa de texto de senha com o controle TextBox dos Windows Forms
- Como criar uma caixa de texto somente leitura
- Como inserir aspas em uma cadeia de caracteres
- Como exibir várias linhas no controle TextBox dos Windows Forms
- Controle TextBox
.NET Desktop feedback