C# HtmlElement

1 Yorum

C# webbrowser’ınızda açılan sayfada, istediğiniz htmlelemanını yönetme imkanını veren HtmlElement classını biraz bahsedeceğim. Örneğin webbrowserınızdan açılan bir forma değer göndermek istiyorsunuz, veya yine browserınızda açılan bir sayfada, resimleri çekmek istiyorsunuz. Bunların hepsini HtmlElement classı yapıyor. Peki nerelerde işimize yarayabilir ? Kullanış amaçları ve yerleri çoktur aslında. Atıyorum bir sms programı yapacaksınız, GSM operatörünüz Web SMS özelliğini destekliyor diyelim. Kısa bir kod yazarak, SMS atılacak sayfaya textboxlarımızdan girilen değerleri gönderip,  formu submit ettirebiliriz. Yine örnek veriyorum. Bir sayfadan sürekli sorgulama yaparak istediğiniz verileri almak istiyorsunuz(tabi web sitenin rss desteği ve webserviceleri yoksa :) ) .Yine yardımımıza HtmlElement classı koşacak ;)

Bir kaç örnek veriyorum. Siz geliştirerek webbrowserınızdaki elemanları DOM teknolojisi ile istediğinizi yaptırabilirsiniz veya verileri alabilirsiniz ;)

foreach (HtmlElement item in webBrowser1.Document.Links)
{
MessageBox.Show(item.GetAttribute(“href”).ToString());
} // Bu kodla sayfadaki tüm linkleri alıp message box ile ekrana uyarı verdirebiliriz. GetAttribute komutu javascript bilenlere tanıdık gelecek bir kod. Gelen elemanın Attribute’unu almamızı sağlar. linkin hrefini değilde ben alt tagını da alabilirdim bu yöntemle. veya sayfadaki resimleri çeker, img tagını alabilirdim.

webBrowser1.Document.GetElementById(“q”).InnerText = “TeknoSeyfo”;
webBrowser1.Document.Forms[0].InvokeMember(“submit”);

Webbrowserımızda google açık olsun. bu komut çalıştığında q idli elemanın textine(valueside olabilir burada value) “TeknoSeyfo” stringini yerleştirir sonra sayfanın ilk formunu submit eder ;)

Örnekleri çoğaltabiliriz. HtmlElement hakkında daha fazla bilgi için MSDN’e girebilirsiniz.

1 Yorum (+ Sende Yaz :))

  1. Mustafa
    Eki 26, 2009 @ 09:30:01

    hazırda olan örneklerinizden birini indirmek için verebilir misiniz acaba bu konuda ?

Yorum Geç ;)