在ASP.NET中找到控件的更好方法我有一個復雜的ASP.NET窗體,在一個窗體中甚至有50-60個字段,比如Multiview,在MultiView中,我有一個GridView,在GridView內部,我有幾個CheckBoxes.當前,我正在使用FindControl()方法并檢索子ID?,F在,我的問題是,是否有其他方法/解決方案可以在ASP.NET中找到嵌套控件。
3 回答

BIG陽
TA貢獻1859條經驗 獲得超6個贊
public static IEnumerable<T> FindControlsOfType<T>(this Control parent) where T : Control{ foreach (Control child in parent.Controls) { if (child is T) { yield return (T)child; } else if (child.Controls.Count > 0) { foreach (T grandChild in child.FindControlsOfType<T>()) { yield return grandChild; } } }}

慕哥6287543
TA貢獻1831條經驗 獲得超10個贊
public T GetControlByType<T>(Control root, Func<T, bool> predicate = null) where T : Control { if (root == null) { throw new ArgumentNullException("root"); } var stack = new Stack<Control>(new Control[] { root }); while (stack.Count > 0) { var control = stack.Pop(); T match = control as T; if (match != null && (predicate == null || predicate(match))) { return match; } foreach (Control childControl in control.Controls) { stack.Push(childControl); } } return default(T);}
添加回答
舉報
0/150
提交
取消