Textbox non modificabile

lunedì 09 febbraio 2009 - 10.58

gderossi Profilo | Newbie

Ciao a tutti.
Sono un neofita di VB.net 2008
Ho un problemino con un textbox che contiene il codice articolo di una tabella Articoli.
Vorrei renderlo non updatabile dopo che è stato inserito.
Come faccio ?

Grazie
Giuseppe

amdbook Profilo | Junior Member

Imposta la proprietà ReadOnly a True del TextBox

>>Pietro Libro
Blog: http://blogs.ugidotnet.org/PietroLibroBlog/

gderossi Profilo | Newbie

Ho provato.
In questo modo non mi fa inserere il codice.
Io voglio inserirlo e dopo salvato non voglio modificarlo.

Ciao

Grazie

amdbook Profilo | Junior Member

Se hai bisogno di validare il codice prima di impostare la proprietà ReadOnly su true (magari perchè vuoi essere sicuro che il codice sia giusto o in un formato corretto), aggiungere il codice per la modifica della proprietà ReadOnyl del TextBox all'interno del gestore evento TextBox_Validating, ad esempio:

private void textBox1_Validating(object sender, CancelEventArgs e) { if (!textBox1.Text.Equals("")) { textBox1.ReadOnly =true ; e.Cancel =true ; } else { MessageBox.Show("Codice non valido"); e.Cancel = false; } }

altrimenti puoi impostare la proprietà ReadOnly a True nell'evento Validated del TextBox

>>Pietro Libro
Blog: http://blogs.ugidotnet.org/PietroLibroBlog/

gderossi Profilo | Newbie

Grazie Pietro.
Il codice che mi hai proposto mi è servito, ma per un altro problema.
Sicuramente sono stato poco chiaro il.
Quando inserisco un nuovo articolo voglio che l'utente possa inserere il codice articolo (è un codice che gli fornisce il fornitore).
Una volta salvato, voglio poter aggiornare tutto (descrizione articolo, prezzo, etc.) tranne il codice articolo.
Spero di essere stato più chiaro.

Grazie

Ciao

Giuseppe

Jeremy Profilo | Guru

Dopo aver salvato metti textbox.enabled=false

Facci sapere...
Ciao

amdbook Profilo | Junior Member

Le soluzioni a questo problema sono molteplici, dipendentemente da come aggiorni i record: Una soluzione potrebbe essere quella di modificare il testo della query ( o stored procedure) che utilizzi per aggiornare i record dei campi in modo tale che quando esegui UPDATE, il campo del codice articolo non venga cambiato

>>Pietro Libro
Blog: http://blogs.ugidotnet.org/PietroLibroBlog/

gderossi Profilo | Newbie


Ho risolto in questo modo:
Ho impostato la proprietà ReadOnly del textbox a True di default.
Quando inserisco un nuovo record la porto a False, inserisco il record, salvo e la riporto a True.

Grazie a tutti

Giuseppe
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5