none
C# treeview 생성 방법 RRS feed

  • 질문

  • 제가  tree view 로 처리하려는 값은 아래와 같은데요......

    4 4A 4A1 4A1A
    4A1B
    4A2 4A2A
    4A2B
    4A2C
    4B 4B1
    4B2 4B2A 4B2A1
    4B2A2

    parent- child 정보만을 가지고  txt로 받아서 treeview로 띄워서  선택을 하거나 하위전체를 다 가져와라..뭐 이러한 부분을

    만드려고 하는데  tree view 처럼 아래로 쭉 나오는게 아니라  부모-자식 , 부모-자식 처럼만 값이 나오네요 ㅠ

    제 소스 코드는 아래와 같습니당..... 전 어디서부터 고쳐야하는걸까요 ㅠㅠ..

    인터넷을 뒤져봐도 자식만 add 하는것만 나와서 ㅠㅠㅠ...

    노드별로 계속  treeview = new treeview 를 해야하는건지;_; 모르겠어요 ㅠ

       if (listBox.Items.Count > 0)
                {
                    for (int i = 0; i < listBox.Items.Count; i++)
                    {
                        string rows = listBox.Items[i].ToString();
                        string[] arr = rows.Split('\t');

                        string parent = arr[0].ToString().Trim();
                        string child = arr[1].ToString().Trim();

                        try
                        {
                            treeView1.Nodes[parent].Nodes.Add(child, child);
                        }catch {
                       
                            // 부모를 다시 재설정해줘야하면

                            treeView1.Nodes.Add(parent, parent);
                            treeView1.Nodes[parent].Nodes.Add(child, child);
                            }  
                    }
                }

    2015년 4월 15일 수요일 오전 1:58

답변

  •   결과  동작 하게끔하는 쿼리를 발견해서 ... 자 답 형식으로 답올립니다..

                            treeView1.Nodes.Add(parent, parent);
                            treeView1.Nodes[parent].Nodes.Add(child, child);

    위의 쿼리를 주석 처리하고  아래의 쿼리를 실행하면 나오네용!!

                            treeView1.Nodes.Find(parent, true)[0].Nodes.Add(child, child);

    2015년 4월 15일 수요일 오전 5:10

모든 응답

  • 아래 예제가 도움이 될것 같습니다. 참고 부탁드립니다.

    This C# TreeView tutorial describes the TreeView control in Windows Forms.

    제시해 드린 답변이 도움이 되었기를 바랍니다.
     
    답변이 문제 해결에 도움이 되었다면 답변으로 채택을 부탁드립니다.
    하지만 문제 해결이 되지 않아서 정확한 답변을 원하는 경우에는 문제의 정보를 더 자세하게 답변으로 제공해주시기 바랍니다

    • 답변으로 표시됨 vo_ovv 2015년 4월 15일 수요일 오전 4:41
    • 답변으로 표시 취소됨 vo_ovv 2015년 4월 15일 수요일 오전 4:41
    2015년 4월 15일 수요일 오전 4:18
    중재자
  • 이 게시물은 봤었는데.. 미리 다 구조를 알고 있어야 하는 방법이라야 가능한 방법인것 같아서 ..풀어나가려는 방법과는 거리가 먼 것 같습니다.ㅠㅠ
    2015년 4월 15일 수요일 오전 4:43
  •   결과  동작 하게끔하는 쿼리를 발견해서 ... 자 답 형식으로 답올립니다..

                            treeView1.Nodes.Add(parent, parent);
                            treeView1.Nodes[parent].Nodes.Add(child, child);

    위의 쿼리를 주석 처리하고  아래의 쿼리를 실행하면 나오네용!!

                            treeView1.Nodes.Find(parent, true)[0].Nodes.Add(child, child);

    2015년 4월 15일 수요일 오전 5:10
  • 해결방법 공유해주셔서 감사드립니다.

    2015년 4월 15일 수요일 오전 6:08
    중재자