我有一個使用DataTable作爲數據源的DataGridView。獲取字符串,如DataGridView所示
我需要(以字符串數組的形式)獲取具有相同格式的DataGridView中顯示的值。
因此,在DataTable中,DGV中顯示的值爲「100」的字段爲「€100,00」。我需要獲得「€100,00」作爲字符串
另一個字段是double,它的值是「31.506849315068493150684931507」,在DGV中顯示爲「31,51」。我需要得到「€31,51」作爲字符串
DataTable
有不同類型的字段(字符串,日期,雙),我需要得到一個字符串,如DGV中所示。
我試着用下面的代碼,但我得到的值爲DataTable
。
For x As Integer = 0 To Me.DGV_IntCalc.RowCount - 1
Dim RowStrList As New List(Of String)
For Each Col As String In MaxColLen.Keys
RowStrList.Add(Me.DGV_IntCalc.Item(Col, x).Value.ToString)
Next
Calc_Summay &= String.Format(F_Str, RowStrList.ToArray) & vbCrLf
Next
F_Str是一個字符串,它賦予列像格式 「{0,10} {} 1.20」
EDIT2:
我也試過:
RowStrList.Add(Format(Me.DGV_IntCalc.Item(Col, x).Value, _
Me.DGV_IntCalc.Columns(Col).DefaultCellStyle.Format))
但它沒有給出預期的結果。我還嘗試:
Dim Str$ = Me.DGV_IntCalc.Item(Col, x).Value.ToString
Dim Frmt$ = Me.DGV_IntCalc.Columns(Col).DefaultCellStyle.Format
Dim FormattedStr$ = Format(Str, Frmt)
或
Dim FormattedStr$ = String.Format(Str, Frmt)
但我得到的值作爲在DataTable
(未格式化的)
爲什麼不直接使用'.Value'而不是'.Value.toString'? – noidea
您已將您的參數轉換爲您的編輯中的'String.Format'。 –
@AndrewMorton我嘗試了'Format'和'String.Format'各自的語法,但我仍然收到錯誤。 – genespos