Datalist 嵌套 Datalist

lianglei9810 2009-01-09 09:20:01
如题,Datalist1 在Datalist2 里 请问Datalist1 怎么得到datalist2 里面的东西
如id 可是Datalist1 里 也有id字段
请给个例子 谢谢
...全文
91 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tongling15 2009-01-09
  • 打赏
  • 举报
回复
支持楼上的
sxmonsy 2009-01-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jiang_jiajia10 的回复:]
C# code
DataList dataList = (DataList)e.Item.FindControl("datalist2");
DataRowView rowv = (DataRowView)e.Item.DataItem;
int mainID = Convert.ToInt32(rowv["Id"]);
[/Quote]
支持这种方法
anncesky 2009-01-09
  • 打赏
  • 举报
回复
就是你平时用datalist一样,在itemtem里丢 datalist啊

获取时

e.Item.DataItem.findControl("id")
jiang_jiajia10 2009-01-09
  • 打赏
  • 举报
回复

DataList dataList = (DataList)e.Item.FindControl("datalist2");
DataRowView rowv = (DataRowView)e.Item.DataItem;
int mainID = Convert.ToInt32(rowv["Id"]);
hongqi162 2009-01-09
  • 打赏
  • 举报
回复
---------前台html代码-------
<asp:datalist id="dlFileType" RepeatColumns="2" runat="server">
<ItemTemplate>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="22%" height="88" align="center" valign="top">
<img src='<%#DataBinder.Eval(Container.DataItem, "cnvcPicURL")%>' width="80" height="80">
</td>
<td valign="top">
<table width="96%" border="0" cellpadding="0" cellspacing="0">
<tr width="100%">
<td colspan="2"><img src='<%#PageBase.strStyleRoot+"/picture/pic_fwzn_08.gif"%>' height="20"><%#DataBinder.Eval(Container.DataItem, "cnvcTitle")%>
<asp:Label id="labFileType" runat="server" Visible=False Text='<%# DataBinder.Eval(Container.DataItem,"cniFileTypeID")%>'>
</asp:Label></td>
</tr>
<tr>
<td width="300">
<asp:DataList id="dlFileList" runat="server" RepeatColumns="1" Width="100%">
<ItemTemplate>
<TABLE cellSpacing="1" cellPadding="1" width="100%" border="0">
<tr>
<td width="7%" height="20" align="center">
<img src='<%#PageBase.strStyleRoot+"/picture/pic_fwzn_dot.gif"%>' width="3" height="3"></td>
<td width="93%">
<font color="#393939">
<%#GetTitle((string)Convert.ToString(DataBinder.Eval(Container.DataItem, "cnvcTitle")),(string)Convert.ToString(DataBinder.Eval(Container.DataItem, "cnvcFileType")),(string)Convert.ToString(DataBinder.Eval(Container.DataItem, "cniBaseFileID")),(DateTime)DataBinder.Eval(Container.DataItem, "cndtPublishTime"))%>
</font>
</td>
</tr>
</TABLE>
</ItemTemplate>
</asp:DataList>
</td>
</tr>
<tr>
<td colspan="2" bgcolor="E6E6E6" height="1"><img src='<%#PageBase.strStyleRoot+"/picture/1X1.gif"%>' width="1" ></td>
</tr>
<tr align="center">
<td height="22" colspan="2"><a href="#" title="可查看到更多相关内容"><img src='<%#PageBase.strStyleRoot+"/picture/more.gif"%>' width="34" height="11" border="0"></a></td>
</tr>
</table>
</td>
</tr>
</table>
</ItemTemplate>
</asp:datalist>

--------后台cs代码------
内层控件数据绑定与事件声明在外层的ItemDataBind中实现

private void dlFileType_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataList dl = null;
Label labTypeID = null;

dl = (DataList)e.Item.FindControl("dlFileList")
labTypeID = (Label)e.Item.FindControl("lbFileType");

string typeID = labTypeID.Text.ToString();
    int iTypeID = Convert.ToInt32(typeID);

    string commandText = "select * from tbfile";
    commandText = commandText + " Where TypeID=" + iTypeID;
    //------------
    string connString = ConfigurationSettings.AppSettings["dsn"];
SqlConnection conn = new SqlConnection();
    conn.ConnectionString = connString;
    conn.Open();
    SqlDataAdapter myCommand = new SqlDataAdapter(commandText,conn);
    DataSet ds = new DataSet();
    myCommand .Fill(ds,"tbFile");
    conn.Close();
    //------------

dl.DataSource = ds.Tables["tbFile"];;
dl.DataBind();
}
}

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧