2011-10-10 23 views

risposta

61

Uso

Convert.toInt32(txtPrice.Text) 

Ciò presuppone VB.NET.

A giudicare dal nome "txtPrice", in realtà non si desidera un intero ma un decimale. Quindi usa:

Convert.toDecimal(txtPrice.Text) 

Se questo è il caso, assicurati che tutto ciò che viene assegnato a Decimale non è un numero intero.

+1

In Vb.net .. Questo codice otterrà un'eccezione 'La stringa di input non era in un formato corretto.;. –

+0

L'ho appena provato ma non ha funzionato. Ho riscontrato un errore di formato questa volta. Ci sto ancora provando Sono rimasto quasi 1 ora e mezza, – swydell

+1

Dim Prezzo come numero intero Dim risultato As Boolean = Int32.TryParse (txtPrice.Text, Price) –

1

Convert.ToIntXX non ama passare le stringhe di decimali.

Per essere un utilizzo sicuro

Convert.ToInt32(Convert.ToDecimal(txtPrice.Text)) 
18

Si può provare:

Dim Price As Integer 
Int32.TryParse(txtPrice.Text, Price) 
+2

Penso che questa sia davvero la migliore risposta. L'utilizzo del metodo TryParse() di Int32 o Decimal potrebbe essere in grado di gestire altre cose inserite nel TextBox, come simboli di valuta e cose di quella natura. Inoltre non genera un'eccezione, ma piuttosto restituisce un valore booleano che indica se è passato o meno. –

1

Si prega di provare questo, VB.NET 2010:

  1. Integer.TryParse(txtPrice.Text, decPrice)
  2. decPrice = Convert.ToInt32(txtPrice.Text)

Da Mola Tshepo Kingsley (WWW.TUT.AC.ZA)

1

si può provare questi:

Dim valueStr as String = "10" 

Dim valueIntConverted as Integer = CInt(valueStr) 

Un altro esempio:

Dim newValueConverted as Integer = Val("100") 
Problemi correlati