我在我的页面上嵌套了 GridView(默认),我需要在里面获取 GridView 的 ID,但它返回 null。我在嵌套的 GridViews 之外有一个 UpdatePanel。它正在使用母版页。
GridView gv = (GridView)UpdatePanel1.FindControl("GridViewSchedule");
我在我的页面上嵌套了 GridView(默认),我需要在里面获取 GridView 的 ID,但它返回 null。我在嵌套的 GridViews 之外有一个 UpdatePanel。它正在使用母版页。
GridView gv = (GridView)UpdatePanel1.FindControl("GridViewSchedule");
这是递归查找控件的辅助方法。
public static Control FindControlRecursive(Control root, string id)
{
if (root.ID == id)
return root;
return root.Controls.Cast<Control>()
.Select(c => FindControlRecursive(c, id))
.FirstOrDefault(c => c != null);
}
// Usage
var gridView = FindControlRecursive(UpdatePanel1, "GridViewSchedule");