[C# 2008] Datagridview .DefaultCellStyle.Format = "0.00%" - moltiplica...

sabato 14 marzo 2009 - 00.08

aleroot Profilo | Junior Member

Ho messo come formato cella in una datagrid view questo : .DefaultCellStyle.Format = "0.00%" oppure .DefaultCellStyle.Format = "p" la cella se io digito 5 diventa 500,00% invece di 5,00% !

Come mai ?
Si può ovviare a questo fastidioso problema ?

Gianni77 Profilo | Junior Member

Forse è normale. Tieni conto che un valore percentuale di 5 (5%) è in realtà in decimale 0,05 (per avere la percentuale moltiplichi difatti per 100), per cui probabilmente il calcolo (moltiplica per 100) viene eseguito già dalla datagridview, per cui devi inserire i valori in decimale (se vuoi visualizzare 5% devi scrivere 0,05). Almeno così penso ma non ne sono sicuro al 100% (!)
Ovviamente la cosa ti crea problemi se qualcuno deve scrivere a mano proprio una percentuale e tu in più vuoi far apparire il segno di % dopo l'inserimento... in questo caso io abbandonerei l'idea di far visualizzare il segno % anche perchè mi pare superfluo, altrimenti devi ricorrere ad un artifizio per far apparire il % dopo l'inserimento, ma se poi devi estrarre i dati dalla tabella per lavorarci su... allora diventa davvero un casotto.
Io ti consiglio di abbandonare l'idea di mettere il segno di % e di lavorare direttamente col numero che ti interessa. Ma è una mia opinione, che può essere anche sbagliata... ripeto: non sono sicuro di come funziona il formato % nella datagridview
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