public IDOMElement GetLastChildFromChilds(Func <IDOMElement, string, bool> filter, params string[] childs) { IDOMElement currentNode = this; var index = 0; while (currentNode != null && index < childs.Length) { var curretnIndex = index++; currentNode = currentNode.GetFirstChild(el => filter(el, childs[curretnIndex])); } return(currentNode); }