在 winforms 中实现 textbox 多行输出且自动换行,需要设置两个关键属性。下面详细介绍:
一、属性设置(两种方式)
方式1:通过设计器设置(推荐)
- 选中
textbox控件 - 在属性窗口中找到以下属性并修改:
| 属性 | 值 | 作用 |
|---|---|---|
multiline | true | 启用多行模式 |
wordwrap | true | 自动换行(默认就是true) |
scrollbars | vertical 或 both | 显示滚动条 |
scrollbars 选项说明:
none- 无滚动条(不推荐多行时使用)horizontal- 仅水平滚动条vertical- 仅垂直滚动条(最常用)both- 水平和垂直滚动条
方式2:通过代码设置
// 在窗体构造函数或load事件中设置 textbox1.multiline = true; // 启用多行 textbox1.wordwrap = true; // 自动换行 textbox1.scrollbars = scrollbars.vertical; // 垂直滚动条
二、文本输出的方法
方法1:直接赋值(覆盖原有内容)
// 直接设置整个文本 textbox1.text = "第一行\n第二行\n第三行";
方法2:追加文本(保留原有内容)
// 追加一行(推荐写法)
textbox1.appendtext("这是新的一行" + environment.newline);
// 或者使用 +=
textbox1.text += "这是新的一行" + environment.newline;方法3:循环输出多行
// 输出数字1到10,每行一个
for (int i = 1; i <= 10; i++)
{
textbox1.appendtext($"第{i}行:hello" + environment.newline);
}三、完整示例代码
设计器设置后的代码示例:
public partial class form1 : form
{
public form1()
{
initializecomponent();
// 或者在这里通过代码设置
// textbox1.multiline = true;
// textbox1.wordwrap = true;
// textbox1.scrollbars = scrollbars.vertical;
}
// 按钮1:添加一行文本
private void button1_click(object sender, eventargs e)
{
textbox1.appendtext("hello" + environment.newline);
}
// 按钮2:批量输出
private void button2_click(object sender, eventargs e)
{
// 清空原有内容
textbox1.clear();
// 输出多行内容
for (int i = 1; i <= 5; i++)
{
textbox1.appendtext($"第{i}次输出:hello" + environment.newline);
}
}
// 按钮3:实时显示日志(常见场景)
private void button3_click(object sender, eventargs e)
{
datetime now = datetime.now;
textbox1.appendtext($"[{now:hh:mm:ss}] 操作执行成功" + environment.newline);
// 自动滚动到底部(显示最新内容)
textbox1.scrolltocaret();
}
}到此这篇关于c#实现textbox文本多行输出且自动换行输出的文章就介绍到这了,更多相关c# textbox文本多行输出并换行内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论