Как я могу разделить строки в строителе строк?
У меня есть StringBuilder, который я использую, и я добавляю к нему из цикла, который проходит через DataGridView. Что мне нужно сделать, это разделить строки, если их больше, чем ", ". Затем я устанавливаю текст метки из StringBuilder. Ниже приведен рабочий пример без запятой...
Это обновленная версия, которая работает отлично сейчас....
Dim strUnits As New System.Text.StringBuilder
Dim lineCount As Integer = 0
For i = 0 To dgvLowInventory.RowCount - 1
If dgvLowInventory.Rows(i).Cells(1).Value Is DBNull.Value Or dgvLowInventory.Rows(i).Cells(2).Value Is DBNull.Value Then
'Skip
Else
If lineCount >= 1 Then
strUnits.Append(", ")
strUnits.Append("[" & dgvLowInventory.Rows(i).Cells(1).Value & " - " & dgvLowInventory.Rows(i).Cells(3).Value & "]")
lineCount += 1
Else
strUnits.Append("[" & dgvLowInventory.Rows(i).Cells(1).Value & " - " & dgvLowInventory.Rows(i).Cells(3).Value & "]")
lineCount += 1
End If
End If
Next
lblTestString.Text = strUnits.ToString()
1 ответ
Решение
Держите счетчик, начиная с 0.
Добавляйте 1 к счетчику каждый раз, когда добавляете, после добавления.
Перед добавлением, если счетчик больше 0, добавьте ", "
перед добавлением строки.
Либо используйте String.Join с ", "
в зависимости от того, на каком языке вы программируете, обычно это эквивалентно. http://msdn.microsoft.com/en-us/library/57a79xd0.aspx