tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Shakie
ERLEDIGT
JA
ANTWORTEN
6
ZUGRIFFE
613
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Immi
    Immi Immi ist offline Mitglied Silber
    Registriert seit
    Oct 2003
    Beiträge
    57
    Hallo!

    ich hab eine Frage, bei der Ihr mir hoffentlich helfen könnt

    Ich hab in einer Form ein WebBrowser-Control. In diesem Control werden Hilfe-Texte oder Tipps angezeigt. Nun möchte ich per Link aus dem WebBrowser-Control direkt zu den betreffenden Form's wechseln.

    Nun hab ich mich irgendwie festgecoded und wollte mal fragen, wie Ihr das ganze angehen würdet?

    Besten Dank bereits!

    lg Immi
     
    "Ich werde niemals behaupten, die Nr.1 zu sein, aber ich werde auch niemals zugeben, die Nr.2 zu sein."
    - Bruce Lee

  2. #2
    Avatar von RudolfG
    RudolfG RudolfG ist offline Mitglied Brokat
    Registriert seit
    Jul 2006
    Ort
    Gummersbach (NRW)
    Beiträge
    337
    Zitat Zitat von Immi Beitrag anzeigen
    Ich hab in einer Form ein WebBrowser-Control. In diesem Control werden Hilfe-Texte oder Tipps angezeigt. Nun möchte ich per Link aus dem WebBrowser-Control direkt zu den betreffenden Form's wechseln.
    Also, dass verstehe ich nicht ganz. Du bist in der Hilfe, möchtest dann aber durch Links direkt in die jeweiligen Dialoge springen? Wenn ja: Wozu brauchst du den sowas?

    Gruß
    RudolfG
     
    Technologien
    (Gute) Grundkenntnisse: HTML, CSS
    Fortgeschrittene-Kenntnisse: C++/Qt, C# (WinForms, Webservice), SQL

  3. #3
    Avatar von Immi
    Immi Immi ist offline Mitglied Silber
    Registriert seit
    Oct 2003
    Beiträge
    57
    Hallo RudolfG!

    Nicht ganz, es ist nicht eine klassische Hilfe. Du kannst es dir eher wie ein "Tipp des Tages" vorstellen, den es bei diversen Programmen gibt.

    Ein Beispiel: Der User durchläuft einen gewissen Prozess im Programm und am Schluss soll er noch an verschiedene Dinge erinnert werden, die er noch erledigen muss.

    Nun hab ich eine Form gemacht die wie eine Art Popup eingeblendet werden kann und diese Info's stehen in dem WebBrowser-Control, das sich auf dieser Form befindet. Soweit so gut. Nun sollen in den Hinweis-Texten allerdings gleich Links zu den Form's dargestellt werden, wo diese Sachen noch erledigt werden müssen um dem User den Weg über die Menü's zu ersparen und das Programm noch Benutzerfreundlicher zu machen.

    Hmm.. hoffe hab mich verständlich ausgedrückt?

    lg Immi
     
    "Ich werde niemals behaupten, die Nr.1 zu sein, aber ich werde auch niemals zugeben, die Nr.2 zu sein."
    - Bruce Lee

  4. #4
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    Du könntest die HTML-Links mit einer Pseudo-Adresse belegen. Dann abonnierst du das Navigating-Event und überprüfst die Url des WebBrowserNavigatingEventArgs-Objekts. Wenn es sich um deine Pseudo-Adresse handelt, dann brichst du die Navigation zur neuen Url ab (Cancel auf True setzen) und öffnest stattdessen deine Form.
    Immi bedankt sich. 

  5. #5
    Avatar von Immi
    Immi Immi ist offline Mitglied Silber
    Registriert seit
    Oct 2003
    Beiträge
    57
    Hallo Shakie!

    Besten Dank für deine Antwort. Dein Vorschlag tönt gut, doch sind noch einige Fragen offen.. Nehmen wir an, ich übergebe als Pseudo-Link den Namespace und den Formnamen der zu öffnenden Form. Dies kann ich ja dann easy im Navigating-Event abfangen und auslesen. Nur.. wie kann ich aus dem String die Info's so auslesen, damit ich nachher die gewünschte Form öffnen kann?

    Irgendwie blockierts hier bei mir

    lg Immi
     
    "Ich werde niemals behaupten, die Nr.1 zu sein, aber ich werde auch niemals zugeben, die Nr.2 zu sein."
    - Bruce Lee

  6. #6
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    Um wie viele Formen handelt es sich denn? Wenn es nur ein paar sind, dann kannst du ja eine Case-Abfrage machen.
    Sonst stellt sich noch eine Frage: Existieren die anzuzeigenden Formen schon als Instanz oder willst du neue instanziieren?
    Wenn du neue Formen instanziieren willst und du den Namespace inklusive Formnamen (= voll gekennzeichneter Typname) übergibst, dann könntest du über Reflection eine neue Instanz erzeugen.
    Wenn du auf bereits existierende Formen zugreifen willst, dann könntest du diese alle in einem Dictionary sammeln. Als Key verwendest du den Typnamen und als Value die Instanz der Form.
    Typnamen von instanziierten Objekten kannst du so herausfinden:
    Code vbnet:
    1
    2
    
    Dim meineForm As New Form
    Dim FullName As String = meineForm.GetType.FullName
     

  7. #7
    Avatar von Immi
    Immi Immi ist offline Mitglied Silber
    Registriert seit
    Oct 2003
    Beiträge
    57
    Hallo shakie

    ok - Dat mit den Links hat perfekt geklappt so - hab's, wie du gesagt hast, per Case-Abfrage realisiert.

    Nun hab ich aber noch ein weiteres kleines Problem, welches wahrscheinlich einfach mit meiner Unkenntnis mit dem WebBrowser Control zusammenhängt..

    Wenn nun beim Start der Applikation die InfoBox geöffnet wird, wird meine Info zwar gesetzt mit:

    this.wbInfo.DocumentText = sDocumentText; //sDocumentText ist mit folgendem gefüllt: <html><body><div style="font-size:12.25; font-family:Microsoft Sans Serif">Offene Planungs-Daten</div></body></html>

    nach dem Aufruf ist wbInfo.DocumentText aber mit <HTML></HTML> gefüllt..

    Ich hab bei meiner InfoBox oben eine ToolBar mit Vor- und zurück Button's, da ich mehrere Meldungen anzeigen lassen möchte. Wenn ich nun da zwischen zwei Meldungen hin- und her navigiere, wird der DocumentText richtig gesetzt..

    Muss ich noch irgendeine Eigenschaft aufrufen oder ein Event abfangen, damit es beim ersten mal bereits gesetzt wird?

    Edit: Hab die Lösung hier gefunden: http://geekswithblogs.net/paulwhitbl.../12/62961.aspx
    Geändert von Immi (09.09.10 um 10:58 Uhr)
     
    "Ich werde niemals behaupten, die Nr.1 zu sein, aber ich werde auch niemals zugeben, die Nr.2 zu sein."
    - Bruce Lee

Ähnliche Themen

  1. WebBrowser Control crasht beim Öffnen von PDFs
    Von DrMueller im Forum Visual Basic 6.0
    Antworten: 0
    Letzter Beitrag: 30.11.10, 09:20
  2. [C#] Webbrowser Control | newWindow
    Von Xenolith im Forum .NET Windows Forms
    Antworten: 0
    Letzter Beitrag: 25.01.09, 13:07
  3. Frage zum Webbrowser Control
    Von hotschen im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 25.08.05, 12:27
  4. Webbrowser Control in Net 2.0
    Von DarkDeath im Forum .NET Windows Forms
    Antworten: 0
    Letzter Beitrag: 21.08.05, 11:08
  5. ActiveX-Control Webbrowser
    Von Frido im Forum VisualStudio & MFC
    Antworten: 0
    Letzter Beitrag: 18.05.05, 16:06