Condividi tramite


Procedura: selezionare testo nel controllo TextBox Windows Form

Nel controllo TextBox Windows Form è possibile selezionare testo a livello di codice. Se ad esempio si crea una funzione che cerca il testo di una particolare stringa, sarà possibile selezionare il testo da visualizzare per mostrare all'utente il percorso della stringa trovata.

Per selezionare testo a livello di codice

  1. Impostare la proprietà SelectionStart all'inizio del testo che si desidera selezionare.

    La proprietà SelectionStart è un numero che indica il punto di inserimento all'interno della stringa di testo. La cifra zero (0) rappresenta la posizione più a sinistra. Se la proprietà SelectionStart è impostata su un valore uguale o maggiore al numero di caratteri nella casella di testo, il punto di inserimento verrà posizionato dopo l'ultimo carattere.

  2. Impostare la proprietà SelectionLength sulla lunghezza del testo che si desidera selezionare.

    La proprietà SelectionLength è un valore numerico che imposta la larghezza del punto di inserimento. Se si imposta la proprietà SelectionLength su un numero maggiore di 0, verrà selezionato tale numero di caratteri a partire dal punto di inserimento corrente.

  3. (Facoltativo) Accedere al testo selezionato tramite la proprietà SelectedText.

    Il codice riportato di seguito consente di selezionare il contenuto di una casella di testo quando viene generato l'evento Enter relativo al controllo. In questo esempio viene controllato se la casella di testo contiene un valore per la proprietà Text diverso da null o una stringa vuota. Quando la casella di testo ha lo stato attivo, viene selezionato il testo corrente nella casella di testo. Il gestore eventi TextBox1_Enter deve essere associato al controllo. Per ulteriori informazioni, vedere Procedura: creare gestori eventi in fase di esecuzione per Windows Form.

    Per testare questo esempio, premere TAB finché la casella di testo non ha lo stato attivo. Se si fa clic nella casella di testo, il testo viene deselezionato.

    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(Object sender, System.EventArgs e) 
    {
    ...if (String.IsNullOrEmpty(textBox1.get_Text())) 
       {
       textBox1.set_SelectionStart(0);
       textBox1.set_SelectionLength(textBox1.get_Text().get_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;
       }
    }
    

Vedere anche

Attività

Procedura: controllare il punto di inserimento in un controllo TextBox Windows Form

Procedura: creare una casella di testo Password con il controllo TextBox Windows Form

Procedura: creare una casella di testo in sola lettura (Windows Form)

Procedura: inserire virgolette in una stringa (Windows Form)

Procedura: visualizzare più righe nel controllo TextBox Windows Form

Riferimenti

Cenni preliminari sul controllo TextBox (Windows Form)

TextBox

Altre risorse

Controllo TextBox (Windows Form)