如何在转发器内找到控件(即图像按钮),转发器已经在数据列表中了?因为我必须对该图像按钮执行删除操作。
这是我的代码,这里我得到的是转发器而不是图像按钮:
foreach (DataListItem item in Dlist_SearchResult.Controls)
{
rptrResult = (Repeater)item.FindControl("Rptr_result");
imgbtnDelete = (ImageButton)item.FindControl("imgbtnDelete");
}
答案 0 :(得分:0)
您可以在FindControl中使用Recursion。默认情况下,FindControl不是递归的。
试试这个:
private static Control FindControlRecursive(Control rootCtrl, string ID)
{
if (rootCtrl.ID == ID)
return rootCtrl;
foreach (Control ctr in rootCtrl.Controls)
{
Control foundCtl = FindControlRecursive(ctr, ID);
if (foundCtl != null)
return foundCtl;
}
return null;
}
你可以称之为
Button btn = FindControlRecursive((Control)Page,"imgbtnDelete");