当前位置:编程学习 > C#/ASP.NET >>

求助:C#循环动态往listView中写数据问题求解 ?

  想用C# winfrom 程序在循环中动态往listView中写数据,可现在总是要等循环完,才把所有结果一起显示出来,而且在循环过程中不能点别的地方,一点就像死机了一样。

  要怎么做才能做到循环一次,就往listView中加一条数据,就是一行一行的往里面加数据,要求定时100ms加一行。急!!!  谢谢!!!
--------------------编程问答-------------------- 要多线程的,循环一下,暂停100ms,再执行一次循环,要不然还是死的。。。 --------------------编程问答--------------------
private void button2_Click(object sender, EventArgs e)
{
    Thread t = new Thread(AddData);
    t.Start();
}

private void AddData()
{
    while (true)
    {
        Action action = () => {
            this.listView1.Items.Add(DateTime.Now.ToLongTimeString());
        };
        this.listView1.Invoke(action, null);
        Application.DoEvents();
        Thread.Sleep(100);
        if (this.listView1.Items.Count > 100)
            break;
    }
}
--------------------编程问答-------------------- --------------------编程问答-------------------- 多线程就可以 --------------------编程问答-------------------- 好像这个思路有点问题。。。
加载后显示与多线程加载都可以,为何要100ms加载一条呢,还要sleep 100
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,