Repeater是ASP.NET网页开发中常用的控件,用于在网页上重复显示相同的内容。在某些情况下,我们可能需要在Repeater内部再嵌套一个Repeater来显示更复杂的数据结构。下面是一个示例介绍: <%# Container.DataItem %>
假设我们有一个学校的学生信息列表,学生被分为不同的班级,每个班级又有不同的学生。我们希望在网页上显示每个班级的学生列表。
首先,创建一个名为Class的类,具有两个属性:ClassName(班级名称)和Students(学生列表)。
```csharp
public class Class
{
public string ClassName { get; set; }
public List
}
```
接下来,在ASP.NET网页的代码中,创建一个Repeater控件,并绑定数据源为Class对象的列表。
```html<%# Eval("ClassName") %>
```
在代码后台,绑定数据源并调用DataBind方法即可。
```csharp
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List
// 假设有两个班级,每个班级有一些学生
Class class1 = new Class { ClassName = "Class 1", Students = new List
Class class2 = new Class { ClassName = "Class 2", Students = new List
classes.Add(class1);
classes.Add(class2);
rptClasses.DataSource = classes;
rptClasses.DataBind();
}
}
```
这样,当页面加载时,Repeater将会根据数据源中的班级信息和学生信息自动重复显示班级和学生列表。通过嵌套Repeater,我们可以方便地显示复杂的数据结构。