将DataSet绑定到Repeater

时间:2016-03-25 14:49:04

标签: c# asp.net webforms dataset repeater

我有一个<asp:Repeater>控件,我正在使用DataSet绑定一个DataTables

我很困惑如何访问和绑定一个表到我的转发器。

我想做这样的事情

<ItemTemplate>
    <tr>
        <td>
            <asp:Label ID="Label2" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "heading_id") %>' />
        </td>
    </tr>
</ItemTemplate>

...但首先是表格,然后是新的<tr>,然后是表格中的数据,依此类推。

1 个答案:

答案 0 :(得分:1)

听起来你想要嵌套的转发器,外面的代表DataSet的DataTables,而内部的代表DataTable中的行。

就个人而言,由于自定义数据绑定,我发现嵌套的中继器很难处理,除非你做了很多事件绑定,否则我可能会更多内联方法,如下所示:

<% foreach (var dt in MyDataSet.Tables) { %>
    <table>
        <% foreach (var row in dt.Rows) { %>
            <tr>
                <td><label><%= row["heading_id"] %></label></td>
            </tr>
        <% } %>
    </table>
<% } %>

在您的代码隐藏中,您只需要将DataSet对象分配给受保护的字段或属性。