![](/img/trans.png)
[英]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.