[英]How can I set the cursor position at the new line which is after the last line in a multiline textbox using C#?
[英]How can I write on a new Line in a MultiLine Textbox?
我必须编写一个程序,您可以在其中输入最小值和最大值。 然后从最小的所有数字。 到最大 甚至应该显示在多行文本框中。
但是,当偶数写入文本框时,它始终会覆盖之前写入文本框的数字。
我尝试了Enviroment.NewLine以及这个\\ r \\ n的东西,但是我可能用错了。
private void cmdstart_Click(object sender, EventArgs e)
{
for (int i = Convert.ToInt32(textBox1.Text); i <= Convert.ToInt32(textBox2.Text); i++)
{
int a = i % 2;
if (a == 0)
{
textBox3.Text = Convert.ToString(i);
}
}
}
最后,它应该输出最小的所有偶数。 到最大 在多行文本框中。 每个数字都应换行。
这是因为您每次都覆盖它。
尝试以下代码:
textBox3.Text += i.ToString()+Environment.NewLine;
确保已在textBox3上将Multiline属性设置为true。
您可以在选择textbox3之后通过属性窗口进行设置,也可以在完成initializeComponents之后在表单构造函数中的以下行中进行编写。
textBox3.Multiline = true;
完成此操作后,Environment.NewLine或\\ r \\ n都应该起作用。
如果您编写多行文字,则可以自己进行测试
输入:
1
2
3
4
五
6
7
使用Designer和Text
属性添加到文本框,您可以看到它生成了以下内容:
txt值:
“1 \\ r \\ N 2 \\ r \\ N3 \\ r \\ N4 \\ r \\ N5 \\ r \\ N6 \\ r \\ N7”
码:
string txt = multiLineTextBox.Text;
因此,如果您将\\r\\n
添加到现有文本中,则会将文本追加到新行:
for (int i = Convert.ToInt32(textBox1.Text); i <= Convert.ToInt32(textBox2.Text); i++)
{
int a = i % 2;
if (a == 0)
{
textBox3.Text = $"{textBox3.Text}{i}\r\n";
// or using string.Format for older versions
//textBox3.Text = string.Format("{0}{1}\r\n", textBox3.Text, i);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.