【问题标题】:How to get the last nodes of a Treeview?如何获取 Treeview 的最后一个节点?
【发布时间】:2015-03-15 04:45:23
【问题描述】:

所以...我有一个基本上代表播放列表的树视图,我想在最后一级(歌曲)上获取 nodes 以获取他们的 text 并能够为 @ 创建播放列表987654323@ 按歌曲在treeview 中出现的顺序,树状视图有类别,例如按年份、按专辑、按艺术家,歌曲将始终位于最后一级,尽管最后一级并不总是相同的。我怎样才能得到最后一级节点?谢谢。

  -- Artist
       --> ALbum
           --> Song1
           --> Song2
           --> Song3
       --> album2
           --> Song1
           --> Song2
  -- Artist2
       --> ALbum1
           --> Song1

【问题讨论】:

    标签: vb.net treeview treenode axwindowsmediaplayer


    【解决方案1】:

    您可以通过设置其name / key 使节点可搜索。

    '                    key         text
    albumNode.Nodes.Add("Song", "Name of song 1")
    albumNode.Nodes.Add("Song", "Name of song 2")
    albumNode.Nodes.Add("Song", "Name of song 3")
    

    要查找键为“Song”的所有节点:

    Dim songNodes As TreeNode() = myTreeView.Nodes.Find("Song", searchAllChildren:=True)
    

    这是一个例子:

    Using view As New TreeView
    
        For i As Integer = 1 To 2
           'Add a new artist node with the key "Artist"
            With view.Nodes.Add("Artist", String.Format("Artist {0}", i))
                Debug.WriteLine(.Text)
                For j As Integer = 1 To 2
                   'Add a new album node with the key "Album"
                    With .Nodes.Add("Album", String.Format("Album {0}-{1}", i, j))
                        Debug.WriteLine("    " & .Text)
                        For k As Integer = 1 To 3
                           'Add a new song node with the key "Song"
                            With .Nodes.Add("Song", String.Format("Song {0}-{1}-{2}", i, j, k))
                                Debug.WriteLine("        " & .Text)
                            End With
                        Next
                    End With
                Next
            End With
        Next
    
        Debug.WriteLine("")
        Debug.WriteLine("Nodes with ""Song"" key:")
        Debug.WriteLine("")
    
        For Each node As TreeNode In view.Nodes.Find("Song", searchAllChildren:=True)
            Debug.WriteLine(node.Text)
        Next
    
    End Using
    

    输出到即时窗口:

    艺术家 1 专辑 1-1 歌曲 1-1-1 歌曲 1-1-2 歌曲 1-1-3 专辑 1-2 歌曲 1-2-1 歌曲 1-2-2 歌曲 1-2-3 艺术家 2 专辑 2-1 歌曲 2-1-1 歌曲 2-1-2 歌曲 2-1-3 专辑 2-2 歌曲 2-2-1 歌曲 2-2-2 歌曲 2-2-3 带有“Song”键的节点: 歌曲 1-1-1 歌曲 1-1-2 歌曲 1-1-3 歌曲 1-2-1 歌曲 1-2-2 歌曲 1-2-3 歌曲 2-1-1 歌曲 2-1-2 歌曲 2-1-3 歌曲 2-2-1 歌曲 2-2-2 歌曲 2-2-3

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-06
      • 2012-12-22
      • 1970-01-01
      • 2013-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多