中继器不显示数据

时间:2015-02-15 19:46:58

标签: c# asp.net twitter-bootstrap

如前所述,这是我的HTML:

<%@ Page Title="" Language="C#" MasterPageFile="~/VendorMaster.master" AutoEventWireup="true" CodeFile="PastOrders.aspx.cs" Inherits="PastOrders" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">

    <br />
    <asp:Repeater ID="rptr" runat="server">
        <HeaderTemplate>
            <div class="col-lg-4 col-md-4 col-sm-4 mb">
                <a href="VendorProfile.aspx">
                    <div class="twitter-panel pn">
                        <i class="fa fa-twitter fa-4x"></i>
        </HeaderTemplate>
        <ItemTemplate>
            <%# DataBinder.Eval(Container.DataItem, "Name") %>
        </ItemTemplate>
        <FooterTemplate>
            </div>
        </a>
        </FooterTemplate>
    </asp:Repeater>

</asp:Content>

C#:

public partial class PastOrders : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["vendor"] != null)
        {
            if (!IsPostBack)
            {
                ArrayList values = new ArrayList();

                values.Add(new Testing
                {
                    Name = "Caterer"
                });

                values.Add(new Testing
                {
                    Name = "Florist"
                });

                values.Add(new Testing
                {
                    Name = "Cab Services"
                });

                rptr.DataSource = values;
                rptr.DataBind();
            }
        }
        else
        {
            Response.Redirect("VendorLogin.aspx");
        }
    }



    public class Testing
    {
        public string Name { get; set; }
    }

}

现在我想生成3个独立的div,其名称为:“Caterer”,“Florist”,“Cab Services”等。

相反,它只生成一个包含其中所有3个名称的div。

我尝试使用页眉模板页脚模板对其进行格式化,其中我将父div和锚标记放在页眉模板中并在页脚模板中关闭相同内容。但它仍然没有产生预期的结果。

1 个答案:

答案 0 :(得分:0)

现在您确实绑定了数据,但您不在访问者中访问数据。将其更改为

<form id="form1" runat="server">
    <asp:Repeater ID="rptr" runat="server" >
        <ItemTemplate>
            <div class="divStyle" id="divStyle">
                 <%# DataBinder.Eval(Container.DataItem, "Name") %>
            </div>
        </ItemTemplate>
    </asp:Repeater>
</form>

它应该有效!