コード例 #1
0
ファイル: HtmlNode.cs プロジェクト: wbtsai/BestFMCRM
 /// <summary>
 /// This will search though this collection of nodes for all elements with the
 /// specified name. If you want to search the subnodes recursively, you should
 /// pass True as the parameter in searchChildren. This search is guaranteed to
 /// return nodes in the order in which they are found in the document.
 /// </summary>
 /// <param name="name">The name of the element to find</param>
 /// <param name="searchChildren">True if you want to search sub-nodes, False to
 /// only search this collection.</param>
 /// <returns>A collection of all the nodes that macth.</returns>
 public HtmlNodeCollection FindByName(string name,bool searchChildren)
 {
     HtmlNodeCollection results = new HtmlNodeCollection(null);
     foreach( HtmlNode node in base.List )
     {
         if( node is HtmlElement )
         {
             if( ( (HtmlElement)node ).Name.ToLower().Equals( name.ToLower() ) )
             {
                 results.Add( node );
             }
             if( searchChildren )
             {
                 foreach( HtmlNode matchedChild in ( (HtmlElement)node ).Nodes.FindByName( name , searchChildren ) )
                 {
                     results.Add( matchedChild );
                 }
             }
         }
     }
     return results;
 }
コード例 #2
0
ファイル: HtmlNode.cs プロジェクト: wbtsai/BestFMCRM
 public HtmlNodeCollection FindByAttributeNameValue(string attributeName,string attributeValue,bool searchChildren)
 {
     HtmlNodeCollection results = new HtmlNodeCollection(null);
     foreach( HtmlNode node in base.List )
     {
         if( node is HtmlElement )
         {
             foreach( HtmlAttribute attribute in ((HtmlElement)node).Attributes )
             {
                 if( attribute.Name.ToLower().Equals( attributeName.ToLower() ) )
                 {
                     if( attribute.Value.ToLower().Equals( attributeValue.ToLower() ) )
                     {
                         results.Add( node );
                     }
                     break;
                 }
             }
             if( searchChildren )
             {
                 foreach( HtmlNode matchedChild in ( (HtmlElement)node ).Nodes.FindByAttributeNameValue( attributeName , attributeValue , searchChildren ) )
                 {
                     results.Add( matchedChild );
                 }
             }
         }
     }
     return results;
 }