如何获取到一个form中的所有子控件?

使用yield关键字,非常的方便

 private static IEnumerable<Control> GetChildren(Control frmRootDock)
        {
            if (frmRootDock == null)
            {
                throw new ArgumentNullException("");
            }

            var list = new List<Control>();
            foreach (Control item in frmRootDock.Controls)
            {
                foreach (Control c in GetChildren(item))
                {
                    yield return c;
                }
                yield return item;
            }
        }

 

posted @ 2019-11-04 09:51  萌橙  阅读(667)  评论(0编辑  收藏  举报