Salve.
Qualcuno sa dirmi come rendere non selezionabile un TextBox.
Grazie.
Salve.
Qualcuno sa dirmi come rendere non selezionabile un TextBox.
Grazie.
A quale scopo??
Sbagliare è umano, perseverare è diabolico.
Per far si che cio che ci sia scritto non possa essere copiato con un semplice copia-incolla.
Ho provato a vedere nelle proprietà del TextBox, ma ammeno che non bisogna fare più abbinamenti per avere un effetto voluto, non sono riuscito a trovarlo.
Come hai già visto non esiste nessuna proprietà, che non sia di sola lettura, che ti permette di non selezionare il testo, e in effetti non si può. Ma si può aggirare l'ostacolo in questo modo:
-Eliminare il menù del pulsante destro della textbox, aggiungendo al progetto un ContextMenuStrip vuoto e assegnarlo alla textbox
- Aggiungere queste poche righe
prova.codice:Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown If TextBox1.SelectedText.Length > 0 Then TextBox1.SelectionLength = 0 End If End Sub Private Sub TextBox1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseClick TextBox1_KeyDown(Nothing, Nothing) End Sub
Sbagliare è umano, perseverare è diabolico.
Ciao Pirelli72.
Ho riscritto il codice per il C# solo che mi da errore alla riga:
Praticamente mi dice : 'Il nome 'Nothing' non esiste nel contesto corrente'codice:TextBox1_KeyDown(Nothing, Nothing)
Devo applicare una using? Se si quale?
Grazie.
Azzz scusa il codice era per VB.NET. Pardon
codice:private void TextBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if (TextBox1.SelectedText.Length > 0) { TextBox1.SelectionLength = 0; } } private void TextBox1_MouseClick(object sender, System.Windows.Forms.MouseEventArgs e) { TextBox1_KeyDown(null, null); }
Sbagliare è umano, perseverare è diabolico.
Ho provato anche come mi hai postato, non mi da più errori ma continua lo stesso a selezionare la casella di textbox, questo è il codice:
Forse non ho capito bene la procedura di eliminare il menù del pulsante destro della textbox.codice:private void txtVisual_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if (txtVisual.SelectedText.Length > 0) { txtVisual.SelectionLength = 0; } } private void txtVisual_MouseClick(object sender,System.Windows.Forms.MouseEventArgs e) { txtVisual_KeyDown(null, null); } private void txtVisual_ContextMenuStripChanged(object sender, EventArgs e) { }
Perchè non disabiliti il TextBox?
Seleziona si ma non puoi più fare il copia/incolla! Hai provato?Originariamente inviato da Pirelli72
Azzz scusa il codice era per VB.NET. Pardon
codice:private void TextBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if (TextBox1.SelectedText.Length > 0) { TextBox1.SelectionLength = 0; } } private void TextBox1_MouseClick(object sender, System.Windows.Forms.MouseEventArgs e) { TextBox1_KeyDown(null, null); }
Sbagliare è umano, perseverare è diabolico.
Scusa Pirelli72 non avevo provato solo che se faccio copia/incolla mi copia questa stringa:
Gibra disabilitando il textbox i simboli numerici non appaiono più ben marcati, ma da quell'effetto di trasparenza.label1.Text = "M";