Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    [Vb.Net] - Formati numerici

    Ragazzi non mi picchiate vi prego! Son agli inizi e son piena di dubbi!

    Questa a dir il vero è una rottura che mi porto dietro dal VB6...

    <i valori numerici>.....odio ...odio...odio...

    vi spiego il mio problema...ho una serie di texbox formattate in tipo currency (in vb.net nn c'è + cmq le ho formattate lo stesso)

    per formattare le textbox ho usato sto metodo:

    codice:
     Dim mioImporto As Single = Convert.ToSingle(tot4.text)
                tot4.Text = mioImporto.ToString("C")
    tutto ok funziona (anche se non ho ben capito perchè si deve convertire in single ecc ecc
    cmq... su tot4 ottengo (per esempio): "€ 2.300,00"

    perfetto! quello che volevo! Il problema è che quel valore devo usarlo per calcoli successivi...

    quindi procedo con la rimozione del "€ " tramite un replace (e già è na rottura vista la mole di textbox che ho)

    ed eccoci all'inghippo...una volta effettuato il replace ottengo 2.300,00 che ovviamente per VB è = a 2,3 .. -.-'....mi chiedo....se il vb è in grado in automatico tramite mioImporto.toString("C") di formattare il numero secondo i canoni italiani perchè non è poi in grado di gestirlo sempre secondo questi canoni?

    cioè..io come lo gestisco ora sto 2.300,00? mi pesco i 2 decimali con un
    "strings.right()" li salvo a parte, rimuovo il punto con un replace e metto una virgola ecc ecc ecc ecc sino ad avere una crisi isterica?

    Aiutatemi

    ps: I valori poi li salvo su un db access su dei campi di tipo "Valuta" formato "Euro" con 2 decimali ovviamente!

    grazie gente vi voglio bene!

  2. #2
    Scusa ma perche' non lavori con la classe Format ...
    Inoltre se hai le textbox, io useri il DataBinding, in questo modo a te non te ne frega piu' niente di quello visualizzato nella textbox, ma lavorerai solamente con il valore reale.

  3. #3
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    nn ho usato format perchè ho letto in giro che vb.net si faceva così per "formattare" in euro...e in effetti funziona...per il databinding nn l'ho mai usato...esempio?

  4. #4
    Esempio stupido se usi il Dataset, poi lo adatti alle tue esigenze

    codice:
    TextBox1.DataBindings.Add("Text", DataSet, "tabella.campo").
    Se poi devi formattare in formato Currency, allora sara' diverso ma non complesso.
    Questo articolo e' molto chiaro a riguardo e credo faccia proprio quel che serve a te.

    http://www.akadia.com/services/dotnet_databinding.html

  5. #5
    Utente di HTML.it L'avatar di tekanet
    Registrato dal
    Oct 2001
    Messaggi
    300
    Un paio di appunti (potrei sbagliarmi):
    - per convertire da una rappresentazione stringa di un numero in un formato numerico, ci sono i metodi Parse (Integer.Parse(stringa), Double.Parse etc)
    - E' fortemente raccomandato utilizzare il tipo di dati Decimal in sostituzione del Currency; i tipi di dati Double e Single non garantiscono la precisione necessaria per gli importi finanziari

    tk

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.