Domanda

Ho un utente che desidera poter selezionare una casella di testo e selezionare il testo corrente in modo da non doverlo evidenziare tutto per modificare il contenuto.

Il contenuto deve essere gestito quando si preme Invio.Quella parte penso di aver capito, ma qualsiasi suggerimento sarebbe il benvenuto.

La parte per cui ho bisogno di aiuto è che una volta premuto Invio, qualsiasi voce nella casella di testo dovrebbe cancellare nuovamente il contenuto.

Modificare: La casella di testo controlla un componente hardware RF.Ciò che l'utente vuole poter fare è inserire un'impostazione e premere Invio.L'impostazione viene inviata all'hardware.Senza fare altro, l'utente vuole poter digitare una nuova impostazione e premere nuovamente Invio.

È stato utile?

Soluzione

Collegati all'evento KeyPress sulla casella di testo e quando incontra il tasto Invio, esegui il codice di impostazione hardware, quindi evidenzia nuovamente il testo completo della casella di testo (vedi sotto): Windows si occuperà di cancellare il testo con la sequenza di tasti successiva per te.

TextBox1.Select(0, TextBox1.Text.Length);

Altri suggerimenti

OK, sei sicuro che sia saggio?Sto immaginando due scenari qui:

  1. C'è un pulsante predefinito nel modulo, che viene "cliccato" quando si preme Invio".
  2. Non esiste un pulsante predefinito e vuoi che l'utente debba premere Invio, a prescindere.

Entrambi sollevano le stesse domande:

  • C’è qualche validazione in atto sul testo?
  • Perché non creare un controllo utente per incapsulare questa logica?
  • Se sai che il pulsante Invio viene premuto e consumato correttamente, come stai riscontrando problemi con TextBoxName.Text = stringa.Vuoto ?

Inoltre, come nota educata, potresti provare a spezzare un po' la tua domanda?Un grosso blocco è un po’ faticoso da leggere..

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top