如何从没有ID或ParentID列的sql数据库表中填充树视图?

时间:2012-08-07 11:45:41

标签: c# sql treeview

我正在使用VS2008中的WinForm应用程序,我有一个sql表,其顺序如下:

Region | Contract  | Name
-------------------------
South  | Miami     | John
South  | Miami     | Peter
South  | Calafornia| Brock
North  | New York  | Josh

我想在树视图中显示如下:

South
  --Miami
      --John
      --Peter
  --Calafornia
      --Brock
North
  --New York
      --Josh

我可以通过阅读数据库表并制作如下所示的datatable来完成它:

ID  | ParentID | Description
-----------------------------
1   |          | South
2   | 1        | Miami
3   | 1        | Calafornia
4   | 2        | John
5   | 2        | Peter
6   | 3        | Brock

我想知道这是否是将表格中的数据导入树视图的唯一方法,或者是否有人可以帮助我使用更加灵活的方法

1 个答案:

答案 0 :(得分:0)

您还可以遍历在每个级别字段上按字母顺序返回的所有行,如果级别字段更改其值,则在该级别创建新分支。

您始终将最后一行保留在内存中,并从右到左比较字段。