如何在ObjectListView中显示所有隐藏列

时间:2014-08-21 02:56:33

标签: vb.net winforms objectlistview

我当前的ObjectListView有大约50列(默认情况下隐藏了30列)。我想添加一个选项,允许用户按下按钮并显示所有列可见。

目前我只能找到允许我一次手动打开每个列的代码:

MainColumn.IsVisible = False
ListView1.RebuildColumns()

但是,它没有解释如何一次打开所有列。

我尝试过使用:

For Each c as OLVColumn In ListView1.Columns
c.IsVisible = True
Next
ListView1.RebuildColumns()

然而,这似乎只是循环通过可见列,所以我没有得到任何改变。

由于

1 个答案:

答案 0 :(得分:0)

无法在单个属性分配中显示所有列。你必须看到所有不可见的列循环。您在问题中给出的示例是正确的,但您只需添加更多条件以使其更快。

<击>

<击>
var columns = (From col As OLVColumn in ListView1.Columns 
               Where col.IsVisible = False).ToArray()
For Each header As OLVColumn IN columns
    header.Visible = True

<击>

For I As Integer = 0 To ListView1.Columns.Count - 1
    IF Not ListView1.Columns(I).IsVisible Then
         ListView1.Columns(I).IsVisible = True
    End IF
Next