无法将数组输出到文本框 [英] Can't output an array to a Textbox

查看:55
本文介绍了无法将数组输出到文本框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个多行文本框,其中包含一个列表(从文本文件复制),我想按字母顺序对其进行排序并将其复制回相同的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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆