Developer2015
Developer2015

Reputation: 61

Display list of objects data in a ASPX web page

I am trying to display a simple list of objects data in a web page. I am only getting the labels to show up in the output and no data. Please tell me what maybe the mistake in this code.

I am getting the following output

Name
Age
City

Name
Age
City

Name
Age
City

Desired output is

Name Donna
Age 40
City New York

Name Raj
Age 10
City New York

Name Art
Age 16
City New York

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Web.UI;
 using System.Web.UI.WebControls;


     public partial class Customer : System.Web.UI.Page
     {

         public class myCustomer {
             public String Name {get;set;}
             public int Age { get; set; }
             public String City { get; set; }

             public myCustomer()
             {
             }

             public myCustomer(string _name, int _age, string _city)
             {
                 Name = _name;
                 Age = _age;
                 City = _city;
             }

     }

         List<myCustomer> customerList;

         protected void Page_Load(object sender, EventArgs e)
         {
             customerList = new List<myCustomer>();

             myCustomer co1 = new myCustomer { Name = "Donna", Age = 40, City = "New York" };
             myCustomer co2 = new myCustomer("Raj", 10, "New York");
             myCustomer co3 = new myCustomer("Art", 16, "New York");
             customerList.Add(co1);
             customerList.Add(co2);
             customerList.Add(co3);
             testDataGrid.DataSource = customerList;
             testDataGrid.DataBind();
         }        
 }


<%@ Page Language="C#" CodeFile="customer.aspx.cs" Inherits="Customer" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:Repeater id="testDataGrid" runat="server" >

        <ItemTemplate>
            <table>
            <tr><td>Name</td><td><asp:TextBox  ID="Customer Name" Text= '<%# Eval("Name") %>' visible="true"/> </td></tr>
            <tr><td>Age</td><td><asp:TextBox ID="Age" Text= '<%# Eval("Age") %>'visible="true" /></td></tr>
            <tr><td>City</td><td><asp:TextBox  ID="City" Text='<%# Eval("City") %>' visible="true" /></td></tr>
                </table>
          </ItemTemplate>

    </asp:Repeater>
    </div>
    </form>
</body>
</html>

Upvotes: 2

Views: 6052

Answers (1)

andyno
andyno

Reputation: 100

Your textboxes need a runat="server"

 <asp:TextBox id="tbName" runat="server" Text='<%#Eval("Name") %>'/>

Upvotes: 2

Related Questions