通过Repeater控件在无序列表中显示数据库中的分层数据

时间:2009-09-02 20:30:34

标签: asp.net

我有一个数据库表,其中包含一些Id,parentId和其他与数据相关的字段 我想使用转发器控件在嵌套<ul> s(嵌套的n级)中显示所有这些 (我不想使用任何其他第三方控件,也不想使用树视图......)

首先,我将数据(一次)从数据库读入一个集合(List<myObject>),我想操作它来获得层次结构。

问题是如何构建转发器的模板?
Repeater的模板是静态的,所以我唯一可以准备的是开始和结束<ul></ul>

如何使用嵌套的uls?如何创建它们?

请建议。

2 个答案:

答案 0 :(得分:0)

您可以将更多转发器控件嵌套到项目模板中,并将它们绑定到数据的子集。

或者,我建议以编程方式构建项目模板。

答案 1 :(得分:0)

您无法使用标准中继器执行此操作。你可以嵌套转发器,但这需要一些编程调整来构建你的层次结构。另一种方法是使用TreeView控件。如果您不喜欢内置的TreeView并且想要更清晰的标记,那么Asp.Net MVC听起来就更合适了。如果你想要一个更加中间的解决方案,Asp.Net的CSS Friendly Control Adapters可能会让你更好。