无法将数组输出到文本框 [英] Can't output an array to a Textbox
问题描述
我有一个多行文本框,其中包含一个列表(从文本文件复制),我想按字母顺序对其进行排序并将其复制回相同的TextBox.谁能告诉我为什么代码不将数组输出到TextBox吗?请注意,它必须是
一个TextBox而不是一个ListBox.
Private Sub SortToolStripMenuItem1_Click(发送者作为对象,e作为EventArgs)处理SortToolStripMenuItem1.Click
暗淡的项目(TextBox1.Lines.Count)作为字符串
对于i = 0到TextBox1.Lines.Count-1
items(i)= TextBox1.Lines(i)
下一个
Array.Sort(items)
TextBox1.Clear()
对于i = 0到TextBox1.Lines.Count-1
TextBox1.AppendText(items(i)& vbCrLf)
'TextBox1.AppendText(items(i)& Environment.NewLine)'-这也不起作用
下一个
结束Sub
I have a multiline textbox containing a list (copied from a text file), which I want to sort alphabetically and copy back sorted to the same TextBox. Can anyone tell me why the code doesn't output the array to the TextBox, please? Note that it must be
a TextBox and not a ListBox.
Private Sub SortToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles SortToolStripMenuItem1.Click
Dim items(TextBox1.Lines.Count) As String
For i = 0 To TextBox1.Lines.Count - 1
items(i) = TextBox1.Lines(i)
Next
Array.Sort(items)
TextBox1.Clear()
For i = 0 To TextBox1.Lines.Count - 1
TextBox1.AppendText(items(i) & vbCrLf)
'TextBox1.AppendText(items(i) & Environment.NewLine) '- This doesn't work either
Next
End Sub
推荐答案
您清除文本框,然后尝试遍历现在为零的TextBox.Lines.Count.
You clear the textbox but then try to loop over TextBox.Lines.Count which is now zero.
在第二个循环中使用items.Length.
Use items.Length instead on the second loop.
TextBox1.Clear()
For i = 0 To items.Length - 1
TextBox1.AppendText(items(i) & vbCrLf)
'TextBox1.AppendText(items(i) & Environment.NewLine) '- This doesn't work either
Next
这篇关于无法将数组输出到文本框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!