Svojstva WebBrowser kontrole

WebBrowser kontrola obezbeđuje funkcionalnost za učitavanje i prikazivanje  HTML strana. Svojstvo AllowWebBrowserDrop određuje da li dokument prevučen u ovu kontrolu biva automatski otvoren. CanGoBack svojstvo omogućava navigaciju unazad. CanGoForward svojstvo omogućava navigaciju unapred. Svojstvo Document vraća tekući HTML dokument unutar WebBrowser kontrole. Svojstvo DocumentStream vraća tok pridružen tekućem dokumentu.

DocumentText svojstvo vraća string koji predstavlja tekući dokument. DocumentTitle svojstvo vraća naslov tekućeg dokumenta. DocumentType svojstvo vraća tip tekućeg dokumenta. IsOffline svojstvo pokazuje da li sistem radi offline. IsWebBrowserContextMenuEnabled pokazuje da li je za web browser omogućen kontekstni meni. URL svojstvo - daje url adresu tekućeg dokumenta.


Metode WebBrowser kontrole

GoBack metoda vrši navigaciju na prethodnu stranu ukoliko ona postoji. GoForward metoda vrši navigaciju na sledeću stranu u navigacionoj istoriji. GoHome vrši navigaciju na home stranu pretraživača. GoSearch vrši redirekciju na stranu za pretraživanje browsera. Navigate metoda vrši navigaciju na specificiranu stranu.

Print metoda vrši štampanje tekućeg dokumenta koji je učitan u WebBrowser kontrolu. Metoda ShowPageSetupDialog se loristi za pozivanje PageSetup dijaloga. Metoda ShowPrintDialog se koristi za prikazivanje PrintDialoga. Metoda ShowPrintPreviewDialog se koristi za prikaz PrintPreview dijaloga. Metoda ShowPropertiesDialog prikazuje informacije o tekućem dokumentu kao što su tip dokumenta, URL adresa, veličina dokumenta, datum njegovog kreiranja i modifikacije itd.Metoda ShowSaveAsDialog otvara  Internet Explorererov Save Web Page dijalog. Metoda  Stop zaustavlja tekuću navigaciju.


Primer - WebBrowser kontrole

 

Na slici je prikazan korisnički interfejs aplikacije koja sadrži jednu Button kontrolu i jednu WebBrowser kontrolu.


Vezivanje WebBrowser kontrole za formu

Pomoću svojstva Anchor potrebno je izvršiti povezivanje WebBrowser kontrole za ivice forme. U primeru na slici je prikazano vezivanje WebBrowser kontrole za sve četiri ivice forme. Ovo omogućava da se veličina ove kontrole tj. web strane koja je u njoj prikazana prilagođava veličini windows forme.


Primer upotrebe metode Navigate

public Form1()
{
    InitializeComponent();
    webBrowser1.Navigate("gmail.com");
}

Pomoću Navigate metode pristupa se adresi gmail.com tj. stranici sa koje se pristupa web mailu firme Google. Metoda Navigate je pozvana u Load proceduri forme da bi se korisnički interfejs Gmail-a prikazao odmah po učitavanju forme.


Pristup Gmailu

private void buttonGmail_Click(object sender, EventArgs e)
{
    HtmlDocument doc = webBrowser1.Document;
    HtmlElement mejl = doc.GetElementById("Email");
    HtmlElement sifra = doc.GetElementById("Passwd");
    // ispod unesite svoje korisnicko ime na gmailu
    mejl.InnerText = "goran.aritonovic";
    // ispod morate uneti svoju sifru za pristup gmailu
    sifra.InnerText = "***********";
    HtmlElementCollection kolekcija = doc.GetElementsByTagName("input");
    HtmlElement trazeni = null;

...........

Najpre se pristupa dokumentu web strane koja je učitana u WebBrowser kontrolu korišćenjem svojstva Document. Korišćenjem svojstva Document kreira se HtmlDocument objekat koji predstavlja objektni model web strane. Pomoću metode GetElementById klase HtmlDocument kreira se odgovarajući HtmlElement koga tražimo.

U primeru koda pristupa se tekst poljima na gmail stranici za unos korisničkog imena i šifre. ID svojstva ovih kontrola smo iščitali direktno iz browsera korišćenjem opcije View Source kojom se prikazuje HTML web strane. Sada se korišćenjem svojstva InnerText definiše tekst koji se unosi u tekstualna polja za unošenje korisničkog imena i šifre. Sada želimo da pristupimo submit dugmetu na gmail stranici. Kreiramo najpre kolekciju html elemenata korišćenjem metode GetElementsByTagName kojoj prosleđujemo vrednost "input". Time je kreirana HtmlElementCollection kolekcija koja sadrži sve HTML elemente na web strani koje su tipa input.


foreach (HtmlElement curElement in kolekcija)
    {
        if (curElement.GetAttribute("name").Equals("signIn"))
        {
            trazeni = curElement;
        }
    }
    if (trazeni != null)
    {
        trazeni.InvokeMember("click");
    }
}

Sada želimo da pristupimo submit dugmetu sa gmail strane. Korišćenjem foreach petlje prolazimo kroz kolekciju input tagova tj. HTML kontrola tipa input. Dugme pronalazimo tako što ispitujemo koji element kolekcije ima vrednost atributa "name" jednaku " signIn". Ove podatke smo takođe iščitali iz HTML-a web strane. Pomoću metode InvokeMember pozivamo click događaj dugmeta. Time se unutar event handlera za klik događaj dugmeta automatski pristupa gmail nalogu.

Dodaj komentar Sviđa mi se - (0) Ne sviđa mi se - (0)    

  • WebBrowser kontrola 1
  • WebBrowser kontrola 2
  • WebBrowser kontrola 3