3

我需要显示如下内容。

A型

  1. A 类项目 1
  2. 类型 A 项目 2
  3. 类型 A 项目 3

B型

  1. B 型项目 1
  2. B 类项目 2
  3. B 型项目 3

C型

  1. C型项目1
  2. C型项目2
  3. C型项目3

所有数据都来自具有“类型”和“项目名称”列的数据集。现在一个简单的解决方案是为每个“类型”创建一个转发器,并按每个“类型”过滤数据集。但是,我只想使用一个中继器,问题是我需要一些方法来识别每个新部分何时有标题。

<div>[Header][Item]</div>

[Header] = <b>Type A</b><br />
[Item] = Type A Item 1

因此,只有每个 Type 的第一项获得标题项,所有其他项都设置为空字符串。

有谁知道任何可以帮助的技巧?

4

3 回答 3

2

不是为每种类型创建一个转发器,嵌套转发器怎么样?

http://www.codeproject.com/KB/aspnet/AspNetNestedRepeaters.aspx

试试看。您仍然需要一个以上的中继器,但在这种情况下,您只需要两个,并且您不必为每种类型制作一个(正如您所担心的那样),而是一个用于类型,一个嵌套里面的物品。上面的链接应该为您提供进一步调查的良好起点。

于 2009-01-06T17:43:18.203 回答
0

好的,我只是想出了一个解决方案。虽然它很脏。

我创建了一个全局变量来跟踪标题。该变量是一个字符串列表。OnItemDatabind 我检查标题项是否在全局列表中。

如果该项目不存在,我将其添加到列表中并显示标题。否则,标题项为空。

到目前为止,这有效,但我不知道我对此有何感受。

编辑:我想知道另一个控件是否可以更好地工作......

于 2009-01-06T17:36:37.467 回答
0

假设它们按类型排序,您不需要保留整个列表:只需保留当前项目。

查找有关控制/中断报告的更多信息。

于 2009-01-06T17:48:14.637 回答