我想编写这段代码,但对我来说不起作用
Dim x
Dim y
x = TextBox1.Lines(1 - 5)
y = TextBox1.Lines(6 - 10)
TextBox2.Text = x
TextBox3.Text = y
我想从文本框中获取值.. x从第1行到第5行 ,y从第6行到第10行
答案 0 :(得分:0)
确保其中有10行,否则添加一些验证/错误处理
Dim x = TextBox1.Lines.Take(5)
Dim y = TextBox1.Lines.Skip(5).Take(5)
TextBox2.Text = String.Join(Environment.NewLine, x)
TextBox3.Text = String.Join(Environment.NewLine, y)
根据您的编辑,您甚至不需要x和y。简单
TextBox2.Text = String.Join(Environment.NewLine, TextBox1.Lines.Take(5))
TextBox3.Text = String.Join(Environment.NewLine, TextBox1.Lines.Skip(5).Take(5))
答案 1 :(得分:0)
首先,您必须在Dim
语句中指定一种类型。我假设您要使用String
来存储这些行。
然后1 - 5
和6 - 10
仅计算1 minus 5
和6 minus 10
,而没有指定行范围。您可以使用LINQ选择所需的行。但是然后,您必须连接以字符串枚举形式给出的这些行,以构建单个字符串。
Dim x, y As String
x = String.Join(vbNewLine, TextBox1.Lines.Take(5)) 'Lines 1 - 5
y = String.Join(vbNewLine, TextBox1.Lines.Skip(5).Take(5)) 'Lines 6 - 10
还要注意,Lines
属性返回一个字符串数组。数组索引在VB.NET中从0开始!也就是说,第一行是TextBox1.Lines(0)
。