点击button1将textbox中的文本在richtextbox中显示,多次点击在richtextbox中自动换行
时间: 2024-03-05 13:54:17 浏览: 142
好的,以下是在 C# 中使用 WinForms 的 TextBox 和 RichTextBox 控件实现点击 Button 控件将 TextBox 中的文本在 RichTextBox 中显示,并且多次点击后在 RichTextBox 中自动换行的代码示例:
```csharp
private void button1_Click(object sender, EventArgs e)
{
string inputText = textBox1.Text;
richTextBox1.AppendText(inputText); // 将 TextBox 中的文本追加到 RichTextBox 中
richTextBox1.SelectionStart = richTextBox1.TextLength;
richTextBox1.ScrollToCaret(); // 自动滚动到最后一行
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
string inputText = textBox1.Text;
richTextBox1.AppendText(inputText); // 将 TextBox 中的文本追加到 RichTextBox 中
richTextBox1.AppendText("\n"); // 在 RichTextBox 中手动添加换行符
richTextBox1.SelectionStart = richTextBox1.TextLength;
richTextBox1.ScrollToCaret(); // 自动滚动到最后一行
textBox1.Clear(); // 清空 TextBox 中的文本
e.Handled = true; // 阻止按键事件继续传递
}
}
```
在这里,我们在 Button 控件的 Click 事件处理程序中获取 TextBox 控件的 Text 属性,即为其中输入的文本。然后,我们使用 RichTextBox 控件的 AppendText 方法将这段文本追加到 RichTextBox 中显示出来。我们还使用 SelectionStart 和 ScrollToCaret 方法,将 RichTextBox 控件滚动到最后一行,以便显示新追加的文本。
在 TextBox 控件的 KeyDown 事件处理程序中,我们判断用户是否按下了 Enter 键,如果是,则将 TextBox 控件中的文本追加到 RichTextBox 中,并在 RichTextBox 中手动添加换行符。然后,使用 SelectionStart 和 ScrollToCaret 方法将 RichTextBox 控件滚动到最后一行,以便显示新追加的文本。最后,我们清空 TextBox 中的文本,并使用 Handled 属性阻止按键事件继续传递,以避免重复输入。
请注意,这里我们假设已经在窗口中添加了一个 TextBox 控件和一个 RichTextBox 控件,并将 Button 控件的 Click 事件绑定到了 button1_Click 方法上,将 TextBox 控件的 KeyDown 事件绑定到了 textBox1_KeyDown 方法上。如果你还没有添加这些控件,可以参考前面的示例来添加。
阅读全文