2011-02-14 88 views
1

我想在約20行顯示一些文本數據。每行可以比表單的大小更長。在這種情況下,該線的其餘部分應該被切掉。c# - 快速ListBox數據更新

我不想有任何h或v滾動條。

由於ListBox控件可以處理我的需求,我嘗試過使用它。一切工作正常,但如果我有一個沉重的磁盤負載可能會發生,控制開始閃爍,我不認爲這是必須的。我每秒更新一次數據,並且總是少於20行的文本數據。似乎我使用ListBox錯誤。

我有可能在另一個線程中將數據準備爲字符串或字符串數​​組,但在每種情況下都必須更新整個ListBox。哪種技術最適合用ListBox填充數據?我可以有兩個緩衝區,我可以切換到ListBox使用?

希望有一個更好的解決辦法...

回答

2

在向ListBox添加數據之前,嘗試調用SuspendLayout(),然後在ListBox上調用ResumeLayout()。你可能會失去一點閃爍。

+0

我會試試這個......謝謝! – fpdragon 2011-02-14 11:47:23

0

你既可以創建一個數據綁定,然後只更新綁定,應該更好地工作。 一個便宜的方法是改變列表框的可見性,並使其在開始時不可見,並在結束時可見。便宜,但應該工作。 ;)

+0

現在我正在使用兩個數據綁定,每次數據更改時都會切換。似乎這個數據綁定開關會使控制閃爍。你的意思是什麼意思? 2個相同的控件重疊並切換頂部控件的可見性?似乎非常便宜。無論如何謝謝你! – fpdragon 2011-02-14 11:46:22