0

我正在使用 ASP.NET Web 窗体,并创建了一个自定义 .ascx 用户控件,它表示具有类型、图片和颜色等属性的汽车。

现在我尝试以重复的方式在用户界面上添加这个自定义控件。假设我在数据库中有 5 辆汽车,那么 5 个用户控件将在 UI 上呈现,最好在 asp 控件内。

我一直在寻找这样的控件,研究网格视图和转发器,但它们似乎只有从“原始”类型构建的对象列表作为数据源,而不是像我的自定义 ascx 控件列表这样的对象。

我的问题是我是否可以以某种方式在 asp 或 html 控件内的重复循环中呈现这些用户控件,从而提供格式化它的选项(支持 css)?(如果是这样,请给我一个例子)

4

1 回答 1

2

使用您的用户控件在其中创建 a ListView,然后将 a 绑定List<CarObject>到该控件ListView

<asp:ListView ID="listView1" runat="server">
    <ItemTemplate>
        <myUC:MyUserControl ID="myUserControl" runat="server" />
    </ItemTemplate>
</asp:ListView>

将您的对象列表(例如 )绑定 List<Car>到该列表视图,listView1.DataSource = myListOfCars;。然后在ItemDataBound事件中将您的对象绑定到您的用户控件。

或者,您也可以将用户控件中的标记放在 中ListView,然后将信息绑定到ItemDataBound事件中,并完全回避整个用户控件问题。这仍然允许您重用标记。

于 2012-12-17T21:25:06.837 回答