Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Formattare campo tipo valuta
sabato 11 maggio 2013 - 10.58
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
jekisi
Profilo
| Senior Member
460
messaggi | Data Invio:
sab 11 mag 2013 - 10:58
Salve a tutto il forum, avrei il seguente problema:
Per formattare un campo di tipo valuta faccio
ImponibileTextBox.Text = String.Format("{0:c2}", Convert.ToDecimal(ImponibileTextBox.Text))
Solo che non mi spunta davanti all' imponibile il simbolo €
Per fare ciò cosa dovrei fare?
Come dovrei cambiare il codice?
Distinti Saluti
Fabio Messina
Dev01
Profilo
| Newbie
30
messaggi | Data Invio:
sab 11 mag 2013 - 13:37
ImponibileTextBox.Text = String.Format("{0:c2}", Convert.ToDecimal(ImponibileTextBox.Text)) & " €"
jekisi
Profilo
| Senior Member
460
messaggi | Data Invio:
dom 12 mag 2013 - 08:58
Ciao, grazie per la risposta.
Il codice funzina solo che non so perchè non mi salva la formattazione, io faccio:
ImponibileTextBox.Text = String.Format("{0:c2}", Convert.ToDecimal(ImponibileTextBox.Text)) & ""
Cn.Open()
sql = "UPDATE Rddt SET Imponibile=" & Chr(34) & ImponibileTextBox.Text.Replace(Chr(34), "''") & Chr(34) & ", Iva=" & Chr(34) & IvaTextBox.Text.Replace(Chr(34), "''") & Chr(34) & " where IdRiga=" & IDrigaTextBox.Text
cmd = New OleDb.OleDbCommand(sql, Cn)
dr = cmd.ExecuteReader
Cn.Close()
Mica per il campo valuta devo cambiare la query?
Distinti Saluti
Fabio Messina
Dev01
Profilo
| Newbie
30
messaggi | Data Invio:
dom 12 mag 2013 - 20:12
Ciao,
hai scritto:
ImponibileTextBox.Text = String.Format("{0:c2}", Convert.ToDecimal(ImponibileTextBox.Text)) & "" ' e la €??
Oltre ad essere impossibile inserire un simbolo alfabetico in un campo formattato quale valore numerico, risulta altamente sconsigliabile nel caso dovessi affrontare, successivamente, dei calcoli sui valori ivi contenuti (per cui ti sconsiglio, come conseguenza, anche l'utilizzo di un campo di tipo text).
La € va aggiunta a runtime (o nella label esplicativa posta di fianco alla textbox).
Nessuno che abbia un po di senno la inserirebbe nello stesso campo impiegato per registrare il valore.
jekisi
Profilo
| Senior Member
460
messaggi | Data Invio:
lun 13 mag 2013 - 08:25
Il fatto che non voglio usare il campo testo è il seguente:
Dopo dovrei fare le stampe, e se metto il campo testo non posso fare per certi campi la funzone SUM di Crstal Report, quindi il campo deve essere numerico o valuta.
Per quanto riguarda l formatazione, se scrivo
TextBox1.Text = String.Format("{0:c2}", Convert.ToDecimal(TextBox1.Text)) & " €"
e nella text scrivo ad sempio 25 mi restituisce € 25,00 €
se invece tolgo il simbolo € finale
TextBox1.Text = String.Format("{0:c2}", Convert.ToDecimal(TextBox1.Text)) & " €"
TextBox1.Text = String.Format("{0:c2}", Convert.ToDecimal(TextBox1.Text)) & ""
mi resituisce € 25,00
Ma non risco a salvarlo, neanche come campo valuta.
Non capisco questo motivo.
Dev01
Profilo
| Newbie
30
messaggi | Data Invio:
lun 13 mag 2013 - 12:45
Infatti io ti ho detto che il campo di testo NON va utilizzato.
Se inserisci un valore contenete una virgola il DML non l'accetta (Tu scrivi '€ 25,00').
Io ho fatto così:
Alter table MyTable add valuta decimal (10,2); -- dove (10,2) indica le massime posizioni possibili rispettivamente prima e dopo la virgola.
per poi eseguire:
Update MyTable set valuta= 123.45 where id=1; ' nota che la tabella conteneva già alcuni dati.
Sei il problema persiste prova ad eseguire un TryCast esplicito fra il testo e il tipo Decimal.
PS: Per pura curiosità: a cosa servono tutti quei Chr(34)?? Rendono il codice poco leggibile, affaticano il compilatore e non risultano essere di alcuna utilità.
01000100 01100101 01110110 00101101 00110000 00110001
Torna su
Stanze Forum
Elenco Threads
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 !