我一直在尋找一種方式來做到這一點,沒有太大的成功,所以這裏是問題。c#更新列表框沒有'滯後'
如何將項目添加到單獨的線程中的列表框,以便它不凍結ui? 每次添加到列表框時大約有5-15k項目,並且每次凍結ui 5-12秒。
表單有4個列表框,首先創建這些列表框的信息,並將其添加到2D數組(這樣做可以更容易地跟蹤屬於一行的所有信息)。之後我遍歷該2D數組,將1行中的4列添加到它的相應列表框中。
例如。
for (int n = 0; n < 7500; n++)
{
listBox1.Items.Add(itemList[n, 0].ToString());
listBox2.Items.Add(itemList[n, 1].ToString());
listBox3.Items.Add(itemList[n, 2].ToString());
listBox4.Items.Add(itemList[n, 3].ToString());
}
如前所述,如何使用其他線程比UI更新這些列表框,以防止UI
確定一個普通的listbox是向用戶顯示*一千五百個項目的最佳UI嗎?他們無法一次查看所有這些列表。 – 2012-02-05 20:02:01
我想顯示那麼多項目的原因是爲了調試目的,以檢查信息是否真的是全部正確的,以及我期望的結果。這個程序稍後將被整合到其他程序中,而不會顯示它的項目。我只是好奇如何做到這一點,如果有可能的話(事實證明它是這樣)。但是我會看看Listviews – Raskaroth 2012-02-05 20:22:05