Here we will know when we will click one value of repeater in runtime all its related values will be displayed.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Repeater_within_Repeater._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<style type="text/css">
.header
{
font-size: larger; font-weight: bold; cursor: hand; cursor:pointer;
background-color:yellow; font-family: Verdana;
}
.details
{
display:none; visibility:hidden; background-color:red;
font-family: Verdana;
}
</style>
<script language="JavaScript" type="text/javascript">
function ToggleDisplay(id)
{
var elem = document.getElementById('d' + id);
if (elem)
{
if (elem.style.display != 'block')
{
elem.style.display = 'block';
elem.style.visibility = 'visible';
}
else
{
elem.style.display = 'none';
elem.style.visibility = 'hidden';
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater id="r1" runat="server">
<ItemTemplate>
<div id='h<%# Eval("ItemIndex") %>' class="header"
onclick='ToggleDisplay(<%# Eval("ItemIndex") %>);'>
<%# Eval("sid")%>
</div>
<div id='d<%# Eval("ItemIndex") %>' class="details">
<b>Name:</b> <%# Eval("sname")%><br />
<b>Address:</b> <%# Eval("saddress")%><br />
<b>Marks:</b> <%# Eval("smarks")%><br />
</div>
</ItemTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace Repeater_within_Repeater
{
public partial class _Default : System.Web.UI.Page
{
string connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlCommand com;
SqlDataAdapter sqlda;
DataSet ds;
string str;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bindrepeater();
}
}
void bindrepeater()
{
SqlConnection con = new SqlConnection(connStr);
con.Open();
str = "select * from student";
com = new SqlCommand(str, con);
sqlda = new SqlDataAdapter(com);
ds = new DataSet();
sqlda.Fill(ds,"student");
r1.DataSource = ds;
r1.DataMember="student";
r1.DataBind();
con.Close();
}
}
}