本文实例讲述了asp.net实现DataList与Repeater嵌套绑定的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<%@ Page Language= "C#" AutoEventWireup= "true" CodeFile= "home.aspx.cs" Inherits= "home" %>
<body>
<form id= "form1" runat= "server" >
<asp:DataList ID= "monitorTypeList" runat= "server" RepeatColumns= "4"
onitemdatabound= "monitorTypeList_ItemDataBound" RepeatDirection= "Horizontal" ItemStyle-VerticalAlign= "Top" >
<ItemTemplate>
<table class = "conBox" width= "186" border= "0" cellpadding= "0" cellspacing= "1" style= "margin-right:10px;" >
<tr>
<th><a href= "<%#Eval(" plugpath ") %>" ><%#Eval( "monitor_type_name" ) %></a></th>
</tr>
<asp:Repeater ID= "monitorConfigList" runat= "server" >
<ItemTemplate>
<tr>
<td><a href= "<%#Eval(" plugpath ") %>?monitor_id=<%#Eval(" monitor_id ") %>" ><%#Eval( "monitor_name" ) %></a></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</ItemTemplate>
</asp:DataList>
</form>
</body>
|
home.aspx.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
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;
public partial class home : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
myCheck.IsLoginNonReturn();
if (!IsPostBack)
{
Bind_monitorTypeList();
}
}
protected void Bind_monitorTypeList()
{
string sql = "select monitor_type_id,monitor_type_name from monitor_type" ;
DbConn conn = new DbConn();
DataSet ds = conn.DataSet(sql, "monitor_type" );
monitorTypeList.DataSource = ds.Tables[0];
monitorTypeList.DataBind();
ds.Dispose();
conn.Close();
}
protected void monitorTypeList_ItemDataBound( object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
string monitor_type_id = ((DataRowView)e.Item.DataItem).Row[ "monitor_type_id" ].ToString();
Repeater monitorConfigList = (Repeater)e.Item.FindControl( "monitorConfigList" );
if (monitorConfigList != null )
{
string sql = "select monitor_id,nonitor_name,plugpath from monitor where monitor_type_id=" + monitor_type_id;
DbConn conn = new DbConn();
DataSet ds = conn.DataSet(sql, "monitor" );
monitorConfigList.DataSource = ds.Tables[0];
monitorConfigList.DataBind();
ds.Dispose();
conn.Close();
}
}
}
}
|
希望本文所述对大家asp.net程序设计有所帮助。