Разделение элементов в многострочное текстовое поле в элемент управления ListView
- Привет! Я пытаюсь понять это уже несколько дней
Я хочу разделить строку и добавить элементы в столбец listview
мне удалось заставить его работать, но по какой-то причине он добавляет только 1 строку, как мне это сделать, пока ничего не останется?
пример:
1|имя|адрес
Dim s As String = TextBox2.Text Dim split As String() = s.Split(New [Char]() {"|"}) ListView1.Items.Add(split(0)) ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(split(1)) ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(split(2))
textbox2.text содержит "1|имя|адрес"
код преобразует его в строку, строка разделяется
это работает только для первой строки
если у меня есть несколько строк в textbox2 / string , он их игнорирует.
1 будет в первой колонке, имя будет во второй, а адрес-в третьей колонке
если строка имеет это:
1|name|address
2|name|address
он проигнорирует вторую строку, добавит первую строку и закончит на этом
не могли бы вы, пожалуйста, помочь? спасибо
Что я уже пробовал:
Я перепробовал все от Гугла, он не будет читать все строки
Member 13356923
Обычно если я читаю его непосредственно из файла через streamreader это будет что то вроде:
Do While inputstream.Peek > 0 'Split each line containing Account|Password into the array newstr = inputstream.ReadLine().Split("|") 'Assigm the values to the variables 'Add them to the list 'ref My.Forms.Database.ListView1.Items.Add(newstr(0)) 'name My.Forms.Database.ListView1.Items.Item(My.Forms.Database.ListView1.Items.Count - 1).SubItems.Add((newstr(1)))
но я не читаю с некоторого времени, это строка, которая делает его еще более трудным
"do while inputstream.peek > 0" - это то, чего мне сейчас не хватает, но как это сделать для строки?
Richard MacCutchan
Он добавляет только один элемент, потому что это все, что вы говорите ему делать. Вам нужно создать For
или Do
цикл, который имеет дело с каждым набором из 3 строк.
И если у вас есть несколько строк, вам, скорее всего, также нужно разделить символы новой строки.