如何将项添加到ListBox列表的开头?

时间:2009-05-04 12:31:11

标签: c# winforms listbox

有没有办法将项添加到WinForms ListBox,到列表的开头而不重写循环中的整个列表?

解决我的问题的其他方法是以相反的顺序显示ListBox(顶部的最后一项)但我不知道该怎么做。

我的ListBox控件用作日志查看器,其中最新的条目应位于顶部。

5 个答案:

答案 0 :(得分:34)

ListBox的项目使用Insert方法。

答案 1 :(得分:26)

如果我理解正确,你不能使用Insert(int index, object item)方法吗?例如:

myListBox.Items.Insert(0, "First");

这会将“First”作为列表框的第一项插入。

答案 2 :(得分:1)

一个选项可能是使用ListBox的.Sort()方法 http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.sort.aspx

另一个当然是将您的商品放在通用列表中并添加/删除商品 从该列表而不是直接到ListBox。使用列表作为ListBox的数据源。

答案 3 :(得分:0)

如果要为日志事件添加时间戳,您应该能够在数据源中设置排序顺序。

答案 4 :(得分:0)

我没有科学证据支持我,但我认为文本框在处理日志可视化方面更有效。 您也可以轻松设置自动滚动,如果您想复制某些内容,则不需要任何编码。