TimeLord
有志者,事竟成,卧薪尝胆,百二秦关终属楚; 苦心人,天不负,破斧沉舟, 三千越甲可吞吴!
IT博客
首页
新随笔
联系
聚合
管理
1 Posts :: 38 Stories :: 0 Comments :: 0 Trackbacks
随笔分类
(2)
ASP.NET
DataBase
Java
SQL
SQL2000
WOW(1)
XML/SOAP
书评
网页设计(1)
文章分类
(37)
AJAX(3)
ASP.NET(8)
C#(1)
Dos/Window(1)
J2EE(1)
Java
Linux(8)
MySQL
Oracle
PHP
SQL(2)
SQL2000(1)
WebService(1)
XML/SOAP
网址大全(2)
网页设计(9)
收藏夹
ASP.NET
SQL
网络协议
网页设计
LINUX
Webmin
SilverLight2.0
Terrylee
书籍教程
CSS学习园地
MS.NET快速入门
前沿视频教程
我爱CSS
爱书吧
开源站点
C#开源资源大全
Discuz!NT
DNN
DNNChina
sourceforge
技术博客
Scott Guthrie博客中文版
张子阳TraceFact
老赵点滴
软件真谛
技术站点
.NET编程网dotnetsky
ASP.NET开发社区
E800
GotDotNet
OKAJAX
SilverLight中文社区
SilverLight中文社区
UML软件工程组织
W3C WEB 验证
W3CSchool(HTML DOM)
WPF之家
中国.NET俱乐部
中国开发者资源门户
网页设计师
求职招聘
51job
中华英才网
南京人事人才网
智联招聘
资源网站
51ASPX
CodeProject
dotneturls
源码天空CodeSky
网络大本营
DataList的欠套绑定
1、我们先在页面中布置好两个DataList。并分别起名,dlsProductMenu,dlsProductInfo。如下:
<
TABLE
id
="Table3"
cellSpacing
="0"
cellPadding
="0"
width
="90%"
align
="center"
border
="0"
>
<
TBODY
>
<
TR
>
<
TD
vAlign
="top"
>
<!--
主菜单开始
-->
<
ASP:datalist
id
="dlsProductMenu"
runat
="server"
RepeatDirection
="Horizontal"
RepeatColumns
="2"
Width
="100%"
>
<
ItemTemplate
>
<
TABLE
class
="table02"
id
="Table13"
cellSpacing
="0"
cellPadding
="0"
width
="100%"
align
="center"
border
="0"
>
<
TR
bgColor
="#f5f5f5"
>
<
TD
width
="50%"
height
="30"
>
<%
# DataBinder.Eval(Container.DataItem,
"
Name
"
)
%>
</
TD
>
</
TR
>
</
TABLE
>
<!--
子菜单开始
-->
<
ASP:datalist
id
="dlsProductInfo"
Width
="100%"
runat
="server"
RepeatColumns
="1"
>
<
ItemTemplate
>
<
TABLE
class
="table02"
id
="Table14"
cellSpacing
="0"
cellPadding
="0"
width
="100%"
align
="center"
border
="0"
>
<
TR
bgColor
="#f5f5f5"
>
<
TD
width
="50%"
height
="30"
>
<
DIV
class
="style10"
align
="left"
>
标题:
<
a
href
=../../'ProductInfoDetail.ASPx?subID=<%#
DataBinder.Eval(Container.DataItem,"subID") %
>
'>
<%
# DataBinder.Eval(Container.DataItem,
"
Title
"
)
%>
</
a
>
</
DIV
>
</
TD
>
</
TR
>
</
TABLE
>
</
ItemTemplate
>
</
ASP:datalist
>
<!--
子菜单结束
-->
</
ItemTemplate
>
</
ASP:datalist
>
<!--
主菜单结束
-->
</
TD
>
</
TR
>
</
TBODY
>
</
TABLE
>
2、进行数据绑定。
(1)为主DataList绑定主数据
DataSet ds
=
SqlDataProvider.GetMainInfo();
//
获取将要绑定的数据。
this
.dlsProductMenu.DataSource
=
ds;
this
.dlsProductMenu.DataBind();
(2)为子DataList绑定从数据。这也是该文的重点。
DataList嵌套的重点是要在外层DataList的ItemDataBound事件中完成对嵌套DataList的绑定。在主DataList的 ItemDataBound事件中用e.Item.FindControl方法来找到嵌套层DataList的id,完后为该id绑定数据。比如:
private
void
dlsProductMenu_ItemDataBound(
object
sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if
(e.Item.ItemType
==
ListItemType.Item
||
e.Item.ItemType
==
ListItemType.AlternatingItem)
{
DataList dataList
=
(DataList) e.Item.FindControl(
"
dlsProductInfo
"
);
DataRowView rowv
=
(DataRowView)e.Item.DataItem;
int
mainID
=
Convert.ToInt32(rowv[
"
Id
"
]);
if
(mainID
>
0
)
{
DataSet ds
=
SqlDataProvider.GetSubContent(mainID);
//
获取从数据。
if
(ds
!=
null
)
{
try
{
dataList.DataSource
=
ds;
dataList.DataBind();
}
catch
(Exception ex)
{
throw
new
Exception(ex.Message);
}
}
}
}
}
posted on 2007-10-06 21:57
TimeLord
阅读(210)
评论(0)
编辑
收藏
引用
所属分类:
ASP.NET
Powered by:
IT博客
Copyright © TimeLord