- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
Public Function GetFormatedValue(ByVal columnName As String, ByVal value As Object) As String
Dim result As String = value.ToString()
Dim vint As Integer
If (TypeOf value Is Decimal) Then
vint = CType(CType(value, Decimal), Integer)
ElseIf (TypeOf value Is Integer) Then
vint = CType(value, Integer)
Else
vint = CType(Decimal.Parse(value.ToString(), System.Globalization.CultureInfo.InvariantCulture), Integer)
End If
Dim stringValue = ConvertStringToInt(value)
Select Case foundedColumn.Format
Case "3"
result = String.Format("${0}M", GetSplitValue(CType(CType(stringValue, Integer) / 1000000, Integer)))
Case "2"
result = String.Format("${0}K", GetSplitValue(CType(CType(stringValue, Integer) / 1000, Integer)))
Case "1"
result = String.Format("${0}", GetSplitValue(vint))
End Select
Return result
End Function
Private Function ConvertStringToInt(ByVal value As Object) As String
Return CType(value, String).Replace(",", String.Empty).Replace(".", String.Empty).Replace(" ", String.Empty)
End Function
Сначало падал exception на 9 строчке, т.к. не была указана культура, вообще.
После того как указали культуру, все, через кейс на 20 строчке, проходило успешно
Далее, когда изменился формат, для правильной конверсии закодили функцию ConvertStringToInt (line 25)
DPNET 14.10.2011 23:28 # 0