Saturday, May 9, 2015

Create Treelist with column VB.net and DevExpress


First What we  Need is Devexpress, you can Download It Here
and VB.net.. i think you was install it..


okay, we start now.
first drag "TreeList" Control From ToolBox
after That Create Colum in Treelist like picture Below
















after this double klik "Button 1"

and copy code below : 

 'RECURTION
    Private Sub InsertNodeChild(ByVal Parent As String, ByVal xtabel As DataTable, ByVal parentNode As TreeListNode)
        Dim lengthChildId = Parent.Length + 2
        Dim xdtrow() As DataRow = xtabel.Select("LEN(id) = " & lengthChildId & " AND substring(id,1," & Parent.Length & ") = " & Parent, "")
        For i = 0 To xdtrow.Length - 1
            TreeList1.AppendNode(New Object() {xdtrow(i).Item("id").ToString, xdtrow(i).Item("Nama").ToString, xdtrow(i).Item("Jumlah")}, parentNode)
            TreeList1.EndUnboundLoad()
            InsertNodeChild(xdtrow(i).Item("id").ToString, xtabel, parentNode.Nodes(i))
        Next

    End Sub

 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        ' DATA EXAMPLE =====

        Dim tb_0 As New DataTable
        tb_0.Columns.Add("id")
        tb_0.Columns.Add("Nama")
        tb_0.Columns.Add("Jumlah", GetType(Double))

        '=== LEVEL 1
        tb_0.Rows.Add(New Object() {"01", "kepala1", 100})
        tb_0.Rows.Add(New Object() {"02", "kepala2", 100})
        tb_0.Rows.Add(New Object() {"03", "kepala3", 100})
        tb_0.Rows.Add(New Object() {"04", "kepala4", 100})

        '=== LEVEL 2
        tb_0.Rows.Add(New Object() {"0101", "kepala11", 100})
        tb_0.Rows.Add(New Object() {"0102", "kepala12", 100})
        tb_0.Rows.Add(New Object() {"0103", "kepala13", 100})
        tb_0.Rows.Add(New Object() {"0104", "kepala14", 100})

        '=== LEVEL 3
        tb_0.Rows.Add(New Object() {"010101", "kepala111", 100})
        tb_0.Rows.Add(New Object() {"010102", "kepala1112", 100})
        tb_0.Rows.Add(New Object() {"010103", "kepala1113", 100})
        tb_0.Rows.Add(New Object() {"010104", "kepala1114", 100})



        '=== GET DATA FROM ALL
        Dim xdtrow() As DataRow = tb_0.Select("LEN(id) = 2", "")
        Dim ParentNothing As TreeListNode = Nothing
        TreeList1.Nodes.Clear()
        For i = 0 To xdtrow.Length - 1
            TreeList1.AppendNode(New Object() {xdtrow(i).Item("id").ToString, xdtrow(i).Item("Nama").ToString, xdtrow(i).Item("Jumlah")}, ParentNothing)
            TreeList1.EndUnboundLoad()
            InsertNodeChild(xdtrow(i).Item("id").ToString, tb_0, TreeList1.Nodes(i))
        Next

    End Sub


after that.. run the program and clik "Button 1"
it will become like this.. 

Or you can download it here
Thank you..
and sory for bad english





No comments:

Post a Comment