private IList <Element> GetChildren(object parent, ITypeHandler parentHandler) { if (!childrenCached) { var enumerator = parentHandler.GetChildren(parent, displayOptions); while (enumerator.MoveNext()) { childrenCache.Add(enumerator.Current); } childrenCached = true; } return(childrenCache); }