如何在C#中向ListView添加不可见的项目?

时间:2011-01-24 17:23:37

标签: listview

我将开发一个项目,通过程序UI中的ListView控件与文件和文件夹进行交互。我已经在listview中添加了一个自定义排序方法,以根据不同的列对项目进行排序。列表视图中有一些列,如大小和日期。大小列包含缩短的大小值,例如“1.9 MB”而不是“2000000”字节,因此不可能通过缩短的大小值对列表视图项进行排序并获得预期的结果。

有没有办法在listview中添加一些不可见的列来存储额外的值?或者将一些额外的项目绑定到listview项目?

3 个答案:

答案 0 :(得分:1)

您不能使用不可见的列,但您可以将不希望显示的列的宽度设置为0.这样,除非用户尝试调整旁边的列,否则它们不会显示。在视觉上,用户现在可以知道它在那里

答案 1 :(得分:1)

有时简单的事情变得如此复杂。 我有它......一个简单方便的解决方案......

实际上可能隐藏项目就像拥有更多子项而不是列一样简单。例如。有6个子项和4列意味着我们有2个“隐藏”子项。唯一剩下的就是将排序过程重定向到这些可排序的隐藏子项(列)。

感谢 WraithNath & Robert Levy ......

答案 2 :(得分:0)

通过自定义排序方式,您可以在没有隐藏列的情况下解决此问题。

for winforms:http://msdn.microsoft.com/en-us/library/system.windows.forms.listview.listviewitemsorter.aspx

表示wpf:http://msdn.microsoft.com/en-us/library/system.componentmodel.sortdescription.aspx