2012-04-20 3 views
1

odbc를 통해 데이터베이스에서 정보 열을 가져옵니다. 열은 1에서 9999999 사이의 숫자를 갖습니다. 다음과 같은 방법으로 최대 3 개 수준 (부모, 자식 및 손자)이있는 트리 뷰로 값을 구성 할 수 있습니다.데이터베이스 값에서 C# Treeview 만들기

이상적인 구조체 수 : AAABBCC
부모 : AAA0000
아이 : 손자 AAABB00
: 레벨이 위의 다음 존재하지 않는 경우 AAABBCC

그러나 값이 수준에서 이동합니다. 예를 들어, 데이터는 다음을 포함한다고 가정 {1, 101, 200, 204, 1,200, 1,205, 1,304, 290,000, 291,500,} 291502,410204

- 1
-
101 - 200
------- 204
--1200
------- 1,205
--1304
--290000
-------- 291,500
- -------------- 291502
--410204

도움이 되었으면 좋겠습니다.
마크

+2

winforms, wpf, silverlight, wp7, asp.net 웹 양식 또는 mvc 또는 기타? –

+0

Microsoft Visual C# – Mark

+1

C#은 UI 프레임 워크가 아닌 언어입니다. –

답변

1

이것은 실제로 매우 간단한 문제입니다.

  1. 각 숫자의 .ToString("D7")을 호출하여 숫자 목록을 문자열로 변환하십시오.
  2. 변환 된 목록을 정렬하십시오.
  3. 하위 문자열 (0,3)을 가져 와서 부모 값을 가져옵니다.
  4. SubString (3,2)을 사용하여 하위 값을 가져옵니다.
  5. 하위 문자열 (5,2)을 가져 손자의 가치를 얻으십시오.
  6. 자식 값이 00이면 새 TreeNode parentNode를 만들어 TreeNodeCollection에 추가합니다.
  7. 자식 값이 00이 아니고 손자 값이 00이면 새 TreeNode childNode를 만들어 parentNode에 추가합니다.
  8. 손주가 값이 00이 아닌 경우 새 TreeNode grandchildNode를 만들어 childNode에 추가하십시오.

순서대로 간격을 채워야하는 경우 약간의 추가 논리가 필요하지만 상당히 간단합니다.