Dobrý den, snažím se udělat web browser a chci se zeptat, jestli je možnost použít jeden webrowser (vytvořenej kódem) do všech tabpagů, ale zároveň, aby když udělám navigate, aby se na všech tabech ten WB nezměnil na tu stránku, ale jen na tom tabu kterej je zrovna aktivní. Řešil jsem to tak že sem udělal 30x wb0-29 a pak sem přes case a zjištění TabIndexu vkládal a pak navigate přes case taky.. ale příjde mi to dost neefektivní a je s tim moc práce... Tak jestli existuje nějaká možnost to udělat jednoduše.
A ještě taková OOT otázka:
nevíte kde sehnat komponentu od chormu, firefoxu nebo opery.. prostě na jádru něčeho jiné než IE místo původního WB. :) Už jsem progooglil celej net a nic jsem nenašel, tak pokud o něčem takovém víte, tak mi prosim pošlete link.
Dík za odpověď
z pozdravem
Háčkař :-D
Fórum › .NET
WebBrowser a tab control?
Zdravím,
na co ten webbrowser bude? Odpověď na druhou otázku: http://chriscavanagh.wordpress.com/2009/08/25/a-real-wpf-webbrowser/
Tak jsem to zkusil, ale WB se nejspíš nevytvoří a když pak ještě chci udělat další TAB tak to hodí error
Object reference not set to an instance of an object.
..
Vytvořim wb
WebBrowser[] wb= new WebBrowser[10];
no ale pak když použiju NEwTab(); tak to hodí tu chybu .. nevim proč ale
private void NewTab()
{
int a = pages + 1;
TabPage tp = new TabPage("Nová stránka " + a);
tabControl1.Controls.Add(tp);
// wb[a].Show();
tabControl1.SelectedIndex = pages + 1;
tp.Controls.Add(wb[tabControl1.TabIndex]);
wb[tabControl1.TabIndex].Dock = DockStyle.Fill;
pages = pages + 1;
}
To Háčkař : Chyba je obecně velmi výstižný a všeříkající pojem, ale zkuste to prosím znovu, aby i ostatní věděli, kde je vlastně problém.
No dobře, mám tam
tu vlastní funkci
private void NewTab()
{
int a = pages + 1;
TabPage tp = new TabPage("Nová stránka " + a);
tabControl1.Controls.Add(tp);
// wb[a].Show();
tabControl1.SelectedIndex = pages + 1;
tp.Controls.Add(wb[tabControl1.TabIndex]); -> TENHLE ŘÁDEK BY MĚL PŘEDAT WB DO TABPAGU ALE NEUDĚLÁ NIC
wb[tabControl1.TabIndex].Dock = DockStyle.Fill; -> A TENHLE ŘÁDEK VYHODÍ ERROR PSANÝ VÝŠE.
pages = pages + 1;
}
Ta chyba je : Object reference not set to an instance of an object (jak už jsem psal) ale když si to přeložim tak mi to nedává smysl.
A teda problém je vztom že to vyhodí runtime chybu a taky že se vůbec WB nezobrazí v tabpagi. Já už jinak nevím, jak to popsat.
To Háčkař : To znamená, že se pokoušíte pracovat s objektem, jehož instance neexistuje. Na jakým řádku k tý chybě dojde?
To Háčkař : Takže v poli na pozici tabControl1.TabIndex neexistuje žádná instance, tj. chybí tam vytvoření toho WebBrowseru. Např. něco ve stylu:
wb[tabControl1.TabIndex] = new WebBrowser();
díky moc, toho problému jsem se zbavil, ale teď mám další problém.. vlastně ten samej ale v jiné situaci.
když chci udělat navigate
tak to hodí opět tu samou chybu.
Kód:
wb[tabControl1.SelectedIndex].Navigate("seznam.cz");
já už fakt nevim :(
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Vytvorenie tab s richtextboxom — založil dodo_mt
String do tab. WPF v reálnem čase — založil Martin
Pomoc s převodem hash tab. z char na int — založil Karel
Vložení dat do tab. Firebirdu pomocí php — založil Marek
Moderátoři diskuze