listbox do webBrowser

0
 private void button3_Click(object sender, EventArgs e)
        {

            if (listBox2.Items != null && listBox2 != null)
            {
                foreach (object item in listBox2.Items)
                {
                    webBrowser1.Navigate(item.ToString());
                    
                }
            }
            
            
        }

Jak każdy item z listBoxa załadować do webBrowsera, przeczekać, aż się załaduje i robić to samo z kolejnym?

0

Dokładnie tak jak napisałeś z tym, że w tym przypadku widoczna będzie zawsze tylko ostatnia strona z listy.
Jakbyś chciał widzieć kilka stron na raz to musisz stworzyć kilka obiektów webBrowser

0

Hm... jednak ja nie chce kilku kontrolek, chcę jeden webBrowser, a do niego kolejno wszystkie itemy z listBoxa.
Mamy listBox:
Google.pl
YouTube.com
4programmers.net

Chcę, aby załadowało Google, jak już to zrobi, przechodzi do YouTube, a następnie do 4programmers.

0
Bukkake is funny napisał(a)

Hm... jednak ja nie chce kilku kontrolek, chcę jeden webBrowser, a do niego kolejno wszystkie itemy z listBoxa.
Mamy listBox:
Google.pl
YouTube.com
4programmers.net

Chcę, aby załadowało Google, jak już to zrobi, przechodzi do YouTube, a następnie do 4programmers.

Czyli kod, który napisałeś to robi i w rezultacie widziesz na końcu wczytaną stronę 4programmers.net

0

Ale nie wczytuje poprzednich stron

0

Już ostatni raz Ci tłumacze jak chcesz widzić x stron na raz to musisz utworzyć x obiektów webBrowser. Koniec.

Ps. jak pisze przeglądarke internetową to tu masz ciekawy artykuł: http://www.codeproject.com/KB/cs/WBrowser.aspx

0

Ale.. ja nie chcę widzieć tych stron na raz.
Ja chcę załadować pierwszą stronę, jak się załaduje, na jej miejscu ma się pojawić kolejna.
Jeden webBrowser, kilka stron kolejno. Google.pl załadowane -> ładuje YouTube -> załadowane -> ładuje WP.pl itd.

0

No to musisz użyć funkcji Sleep(), jak poniżej:

 
private void button3_Click(object sender, EventArgs e)
        {

            if (listBox2.Items != null && listBox2 != null)
            {
                foreach (object item in listBox2.Items)
                {
                    webBrowser1.Navigate(item.ToString());                    
                    Thread.Sleep(5000);
                }
            }                        
        }
0

Czeka 5 sekund, ale ładuje od razu ostatni adres, a pozostałe pomija.

0

no to ustaw na 15 sekund (15000), no i zakładam że w tym listBox'ie rzeczywiście masz kilka adresów a nie tylko jeden?

1 użytkowników online, w tym zalogowanych: 0, gości: 1