public static HtmlElement SelectParent(HtmlElement elChild, string TagName, DelegateFilterHtmlElement Filter) { HtmlElement elParent = elChild.Parent; while (elParent != null) { elParent = elParent.Parent; if (string.Compare(elParent.TagName, TagName, true) != 0) { continue; } if (Filter(elParent)) { return(elParent); } } return(null); }
public static HtmlElement FirstOrDefault(HtmlElement elParent, string TagName, DelegateFilterHtmlElement Filter) { foreach (HtmlElement elCur in Select(elParent, TagName, Filter)) { return(elCur); } return(null); }
public static IEnumerable <HtmlElement> Select(HtmlElement elParent, string TagName, DelegateFilterHtmlElement Filter) { if (elParent != null) { foreach (HtmlElement elCur in elParent.GetElementsByTagName(TagName)) { if (Filter(elCur)) { yield return(elCur); } } } }