Как я могу разделить строки в строителе строк?

У меня есть 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

Другие вопросы по тегам