将文本附加到富文本框的开头

private void button1_Click(object sender, EventArgs e) { richTextBox1.AppendText("\r\n"); richTextBox1.Focus(); string s = "Enter "; richTextBox1.AppendText(s + "\r\n"); richTextBox1.SelectionStart = richTextBox1.Text.Length - (s.Length +1); richTextBox1.SelectionLength = s.Length +1; richTextBox1.SelectionFont = new Font("Arial", 12, FontStyle.Bold); richTextBox1.DeselectAll(); richTextBox1.SelectionStart = richTextBox1.Text.Length; richTextBox1.SelectionLength = richTextBox1.Text.Length; richTextBox1.SelectionFont = new Font("Arial", 12, FontStyle.Regular); richTextBox1.DeselectAll(); } 

每次用户点击按钮时,我都希望新的“Enter”位于RichTextBox底部而不是底部。 我该怎么做?

从技术上讲,如果你将它插入文本的顶部,你就是“插入”或“前置”,而不是“附加”。 ;)

您可以使用SelectedText属性在RichTextBox的开头插入文本。 我刚刚敲了一个快速的演示应用程序来测试它:

  private void button1_Click(object sender, EventArgs e) { richTextBox1.SelectionStart = 0; richTextBox1.SelectionLength = 0; richTextBox1.SelectedText = DateTime.Now.ToString(); } 

当单击button1时,将当前时间插入RichTextBox的开头。

我最喜欢的最简单的方式是,

  private void button1_Click(object sender, EventArgs e) { richTextBox1.Text = DateTime.Now.ToString() + richTextBox1.Text; } 

它将在Start时添加Current DateTime。