如何在 C# 中使用数据列表控件查找其子数据列表?

发布于 2024-10-06 08:39:02 字数 986 浏览 1 评论 0原文

更具体地使用下面的例子, 如何在 C# 中使用数据列表“DL_Pro_Result”查找子数据列表“DL_Gro_Result”?

例如,在以下代码中,dlii 值为 null,即使 dli != null。

DataList dli = (DataList)Page.FindControl("DL_Pro_Result");
DataList dlii = (DataList)dli.FindControl("DL_Gro_Result");

谢谢。

<div id="ProList">
<asp:DataList ID="DL_Pro_Result" runat="server">
<HeaderTemplate>
<table id="T_Pro_Result_Header" runat="server">
<tr>
<td>
<asp:Label ID="L_Pro_Result_Header" runat="server"></asp:Label>
</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table id="T_Pro_Result_Item" class="table" runat="server">
<tr>
<td>
<asp:Label ID="L_Pro_Result_Item" runat="server"></asp:Label>
<asp:Button ID="B_Pro_Result_Item_1" OnClick="B_Pro_Result_Item_1_Click"/>
</td>
</tr>
<tr>
<td>
<asp:DataList ID="DL_Gro_Result" runat="server">

More specifically using the below example,
how do I use the datalist "DL_Pro_Result" to find the child datalist "DL_Gro_Result" in C#?

For example in the following code, dlii value is null, even though dli != null.

DataList dli = (DataList)Page.FindControl("DL_Pro_Result");
DataList dlii = (DataList)dli.FindControl("DL_Gro_Result");

Thanks.

<div id="ProList">
<asp:DataList ID="DL_Pro_Result" runat="server">
<HeaderTemplate>
<table id="T_Pro_Result_Header" runat="server">
<tr>
<td>
<asp:Label ID="L_Pro_Result_Header" runat="server"></asp:Label>
</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table id="T_Pro_Result_Item" class="table" runat="server">
<tr>
<td>
<asp:Label ID="L_Pro_Result_Item" runat="server"></asp:Label>
<asp:Button ID="B_Pro_Result_Item_1" OnClick="B_Pro_Result_Item_1_Click"/>
</td>
</tr>
<tr>
<td>
<asp:DataList ID="DL_Gro_Result" runat="server">

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

彼岸花ソ最美的依靠 2024-10-13 08:39:02

解决方案:

 DataList dli = (DataList)Page.FindControl("DL_Pro_Result");
 foreach (Control child in dli.Controls)
 {
  foreach (Control child1 in child.Controls)
  {
   try
   {
    if ((DataList)child1.FindControl("DL_Gro_Result") != null)
    {
     DataList dli = (DataList)child1.FindControl("DL_Gro_Result");
    }
   }
   catch (Exception e)
   {
    Trace.Warn("Exception!!", e.ToString() + "Trying next iteration");
   }
  }
 }

Solution:

 DataList dli = (DataList)Page.FindControl("DL_Pro_Result");
 foreach (Control child in dli.Controls)
 {
  foreach (Control child1 in child.Controls)
  {
   try
   {
    if ((DataList)child1.FindControl("DL_Gro_Result") != null)
    {
     DataList dli = (DataList)child1.FindControl("DL_Gro_Result");
    }
   }
   catch (Exception e)
   {
    Trace.Warn("Exception!!", e.ToString() + "Trying next iteration");
   }
  }
 }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文