c# winform文本框多行输出结果?
我用for循环要输出大概1000+结果到textbox中。怎样才能for循环得出一个结果就输出一行到textbox,直至所有结果输出完毕...
我用for循环要输出大概1000+结果到textbox中。怎样才能for循环得出一个结果就输出一行到textbox,直至所有结果输出完毕
展开
4个回答
展开全部
你在for循环里加上
textbox.Text += Environment.NewLine + 你的内容
就可以了
不过如果你的每一次循环都很耗时,UI界面可能会卡死,如果是这样,建议你在for循环里异步进行你的工作,返回UI线程更新textbox.Text
注意TextBox的Multiline属性要设为true
textbox.Text += Environment.NewLine + 你的内容
就可以了
不过如果你的每一次循环都很耗时,UI界面可能会卡死,如果是这样,建议你在for循环里异步进行你的工作,返回UI线程更新textbox.Text
注意TextBox的Multiline属性要设为true
更多追问追答
追问
不是指定的内容。就假设一批数据:1、2、3、4...、5000,通过for循环得到2、4、6、8...、10000。像cmd那样的,每处理完一个数据,就将结果同步显示出来
追答
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i < 5000; i++)
{
textBox1.AppendText(i*2 + Environment.NewLine);
}
}
展开全部
我在网上看到很多这样的问题了,比如 1+到100 要看到 动态变化 结果 直接就是 1 卡主 到100 没有变化过程,其中根本原因是 在一个事件里 写了个 循环 你的循环 没执行玩 ui线程一直被占用 不会刷新,所以加个 Application.DoEvents(); 让他刷新就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你想要看到“一行一行输出”的效果,就别用for循环。
干脆用timer,每0.5秒输出一行得了。
干脆用timer,每0.5秒输出一行得了。
追问
我主要是用for循环结合其他函数将一批数据进行转换,不仅仅是看那个效果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你现在的代码是什么样子呢 运行效果?
如果是没刷新 就在循环里强制.refresh
如果是没刷新 就在循环里强制.refresh
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询