(新闻分类显示对应的新闻列表),先发个效果图:
![](https://images.cnblogs.com/cnblogs_com/visualstudio/1.jpg)
这就要用到DataList嵌套!思想很简单!首先绑定父datalist,下面的比较重要,在父DATALIST的ItemDataBound事件时,来绑定他下属的新闻列表,主要就是获取父DATALIST的ID!下面是代码!自己研究吧!
Code
protected void Page_Load(object sender, EventArgs e)
![ExpandedBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
if (!IsPostBack)
![ExpandedSubBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
//绑定DataListNewCat
DataSet dsNewCat = Hy.SqlHelper.SqlHelper.ExecuteDataSet("newcat", CommandType.Text,
"select * from Hy_new_cat order by cat_id desc");
dlNewCat.DataSource = dsNewCat.Tables["newcat"].DefaultView;
dlNewCat.DataBind();
dsNewCat.Dispose();
}
}
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
//绑定DataListNewTitle
protected void dlNewCat_ItemDataBound(object sender, DataListItemEventArgs e)
![ExpandedBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
![ExpandedSubBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
DataList dlNewTitle = (DataList)e.Item.FindControl("dlNewTitle");
DataRowView drv = (DataRowView)e.Item.DataItem;
int catId = Convert.ToInt32(drv["cat_id"]);
if (catId > 0)
![ExpandedSubBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
DataSet dsNewTitle = Hy.SqlHelper.SqlHelper.ExecuteDataSet("newtitle", CommandType.Text,
"select top 5 new_id, new_top,new_title,new_date from Hy_new where cat_id = @catid order by new_top asc,new_id desc",
new SqlParameter("@catid", catId));
if (dsNewTitle != null)
![ExpandedSubBlockStart.gif](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
dlNewTitle.DataSource = dsNewTitle.Tables["newtitle"].DefaultView;
dlNewTitle.DataBind();
}
}
}
}
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)