public TElement ElementOfType <TElement>(Constraint findBy) where TElement : Element { return(ElementFactory.CreateElement <TElement>(domContainer, CreateElementFinder <TElement>(findBy))); }
private NativeElementFinder CreateElementFinder <TElement>(Constraint findBy) where TElement : Element { return(new NativeElementFinder(nativeElementCollectionFactory, domContainer, ElementFactory.GetElementTags <TElement>(), findBy)); }
public static NativeElementFinder CreateNativeElementFinder <TElement>(NativeElementCollectionFactory factory, DomContainer domContainer, Constraint constraint) where TElement : Element { var finder = new NativeElementFinder(factory, domContainer, ElementFactory.GetElementTags <TElement>(), constraint); if (!typeof(TElement).Equals(typeof(Element))) { finder.WrapNativeElementFactory = (dom_container, native_element) => { return(ElementFactory.CreateElement <TElement>(dom_container, native_element)); }; } return(finder); }