Autor Beitrag
kingdave2nd
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: Mi 01.12.10 00:26 
Hallo zusammen,

ich zerbreche mir seit einigen Tag den Kopf über folgenden Problem:

Ich habe eine Form mit einem Navigationsbaum und einem Webbrowser Control. Nun erzeuge ich aufgrund eines Klicks im Nav-Baum ein HTML Objekt (aus XML, DB, ...) und schmeiss das dem webbrowser Control wie folgt vor die Füsse:

ausblenden C#-Quelltext
1:
webBrowserContent.DocumentText = htmlText.ToString();					


Soweit so gut, funktioniert wunderbar. Nun gibt es aber in den HTML Dokumenten wiederum Links zu anderen Topics innerhalb des Nav-Baumes. Da es dieses Topics ja aktuell nicht gibt (das wird ja erst erzeugt, wenn der User auf ein Nav-Baum Objekt klickt) müsste ich also aus dem HTML eine c# Methode aufrufen. Was bekannt ist, ist ein 'Tag' in Form eines String der übergeben werden kann. Diese Tags sind pro Nav-Objekt eindeutig, es gibt dazu eine passende Methode, die den Tag (auch als String) entgegennimmt, zum passenden Nav-Object navigiert und wiederum die passende HTML Seite dynamisch erzeugt.

Tja und nun steh ich da... Wie kann ich das umsetzen? Die ganze Anwendung liegt lokal, hat also alles nix mit Internet zu tun, Webserver steht auch nicht zur Verfügung.

Hat irgendwer eine Idee/ Ansatz dazu wie ich aus dem dem HTML Link irgendwie wieder die C# Methode aufrufe?

Gruss Dave
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 01.12.10 07:17 
Du kannst dafür das Ereignis BeforeNavigate (oder war es mit einer 2 hinten dran?) benutzen. Darin kannst du die Navigation im WebBrowser selbst abbrechen und stattdessen selbst auf den Klick auf den Link reagieren.

Der Link muss dir dann nur in der Adresse sagen, welche Seite denn nun aufgerufen werden soll.
kingdave2nd Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54



BeitragVerfasst: Do 02.12.10 19:19 
Hi,

es war das Event Navigating().

Vielen Dank

Gruss Dave