C#多行的textbox如何逐行显示数据?

麻子Mozart 2009-03-02 03:41:17
public partial class Form1 : Form 
{
string[] arrName = new string[7]{"aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg"};
public Form1()
{
InitializeComponent();
textBox1.Text = "";//多行
}
private void button1_Click(object sender, EventArgs e)
{
//每隔一秒textBox1增加一行(各行为数组的各元素)
//textBox1上当前行显示最后追加的一行。
}

private void button2_Click(object sender, EventArgs e)
{
//停止增加
}
}


大家帮忙看看:两个button里面应该怎么写?
...全文
1531 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenminyong99 2012-06-15
  • 打赏
  • 举报
回复
不错 ,学习了!
duwei1116 2009-03-08
  • 打赏
  • 举报
回复
学习了
wangchungxb 2009-03-02
  • 打赏
  • 举报
回复
用timer事件
wujinjian2008n 2009-03-02
  • 打赏
  • 举报
回复
用Timer 控件 或 线程
北京的雾霾天 2009-03-02
  • 打赏
  • 举报
回复
使用TextBoxBase.ScrollToCaret 方法 可以自动的定位于当前的光标点。

当添加一行的时候光标认在最后。如果不确定的话,可以使用TextBoxBase.SelectionStart 属性设置到TextBoxBase.SelectionLength 属性的位置。然后再调用ScrollToCaret 方法。
SealedLove 2009-03-02
  • 打赏
  • 举报
回复
2,5楼代码不错

学习了!
麻子Mozart 2009-03-02
  • 打赏
  • 举报
回复
太好了。
我开始思路不对,发现还得用计时器。
谢谢大家!
Terran5 2009-03-02
  • 打赏
  • 举报
回复

Timer timer = new Timer();
timer1.Interval = 1000;
private void button1_Click(object sender, EventArgs e)
{
//每隔一秒textBox1增加一行(各行为数组的各元素)
timer.Start();
//textBox1上当前行显示最后追加的一行。
textBox1.AppendText(".........")
textBox1.AppendText("\r\n");
}

private void button2_Click(object sender, EventArgs e)
{
//停止增加
timer1.Stop();
}





qiuming0306 2009-03-02
  • 打赏
  • 举报
回复
计时器!
JaggerLee 2009-03-02
  • 打赏
  • 举报
回复
增加一个全局变量
int NowLine = 0;


Timer 事件内
textBox1.text = textBox1.text + arrName[NowLine] + "\n";
NowLine++;
成都慢生活 2009-03-02
  • 打赏
  • 举报
回复
public partial class Form1 : Form
{
Timer timer1 = new Timer();
string[] arrName = new string[7] { "aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg" };
int stepFlag = 0;
public Form1()
{
InitializeComponent();
textBox1.Text = "";//多行
timer1.Interval = 1000;
timer1.Tick += new System.EventHandler(this.timer1_Tick);
}

private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
}

private void button2_Click(object sender, EventArgs e)
{
timer1.Stop();
}

private void timer1_Tick(object sender, EventArgs e)
{
if (stepFlag < arrName.Length)
{
textBox1.AppendText(arrName[stepFlag]);
textBox1.AppendText("\r\n");
stepFlag++;
}
else
{
timer1.Stop();
}
}
}
JaggerLee 2009-03-02
  • 打赏
  • 举报
回复
你定义一个 Timer Timer 的事件中写 增加一行

button1 触发Timer
button2 停止Timer

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧