【问题标题】:Listview in vb.netvb.net 中的列表视图
【发布时间】:2012-04-15 03:16:50
【问题描述】:

是否可以使用 listview 在 vb.net 中的表单上垂直显示二维数组的内容,如果可以,我该怎么做? 所以,如果我的数组被声明为 dim myarray (2,10) 如何在列表视图中垂直显示内容。非常感谢所有和任何帮助,谢谢。

【问题讨论】:

  • 垂直,你的意思是把数组显示成 3 行 x 11 列?
  • 啊抱歉应该说清楚,如果可能的话,我实际上想显示为 11 行的 3 列

标签: vb.net listview


【解决方案1】:

这种方法应该可以解决问题(我假设我们正在谈论一个 winforms 应用程序,但我意识到它也可以是一个 ASP.NET 应用程序,在这种情况下我的答案可能不再适用) :

Private Sub ShowArrayInListView(ByVal listView As ListView, ByVal dataArray As String(,))
    listView.Items.Clear()
    For y As Integer = dataArray.GetLowerBound(1) To dataArray.GetUpperBound(1)
        Dim lvi As New ListViewItem

        For x As Integer = dataArray.GetLowerBound(0) To dataArray.GetUpperBound(0)
            If x = 0 Then
                lvi.Text = dataArray(x, y)
            Else
                lvi.SubItems.Add(dataArray(x, y))
            End If
        Next
        listView.Items.Add(lvi)
    Next
End Sub

【讨论】:

    【解决方案2】:

    .NET 中的每个控件(如 ListView)都有一个奇妙的模板机制,您可以使用它来将 HTML 放入其中。此外,您可以处理 ItemDataBound 事件并使用 HTML 代码填充位于控件的 ItemTemplate 部分内的标签。然后,使用嵌套循环生成您的 <tr><td>,将它们放在一个字符串上并将其分配给 Label.Text 属性。

    希望对你有帮助,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-19
      • 1970-01-01
      • 2016-04-25
      相关资源
      最近更新 更多