2010-03-29 6 views
7

WebBrowser denetiminde DOM öğeleri arasında gezinmek için XPAth ifadelerini kullanabilir miyim? Javascript kodunu ekleyebilir ve document.evaluate işlevini kullanmak doğru bir yol olabilir mi?Gezinme ve WebBrowser denetimi

Başka bir activeX tarayıcı bileşeni (firefox, webkit.net) görevimi çözmeme yardımcı olabilir mi?

cevap

7

Microsoft WebBrowser denetimi, anladığım kadarıyla, Microsoft'un COM web tarayıcısı denetimi etrafındaki yönetilen bir sarıcıdır. Bu yüzden kaputun altında, IE'nin MSHTML olarak adlandırdığı aynı oluşturma ve DOM uygulamasıdır. Bu, XPath'in HTML DOM'sine karşı desteklemediği için, 'değerlendirme' yöntemini desteklemez (W3C DOM Seviye 3 XPath'in bir parçasıdır) Microsoft'un WebBrowser denetiminde yüklü bir HTML belgesine karşı XPath sorguları gerçekleştirmenin bir yolunu görmüyorum . Üçüncü taraf .NET web tarayıcısı denetimleri olup olmadığını bilmiyorum bir HTML DOM karşı XPath destekleyen diğer tarayıcılara dayalı.

Bir HTML belgesine karşı XPath gerçekleştirmek için .NET'i kullanmak isterseniz, the HTML agility pack vardır. Bu, WebBrowser denetiminden bağımsızdır, ancak bir WebBrowser denetiminde yüklenen bir HTML belgesinde gezinmek için kullanamazsınız, bunun yerine ayrı bir uygulama ile çalışırsınız.

+0

+1, cevabınız için teşekkür ederiz. Çeviklik paketini kullanıyorum, ancak HTML'de gezinmem gerekiyor (belirli düğümleri seçmem/vurgulamalıyım). Alternatif var mı? Şey var mı? – Shimmy