HomeArtikelDownloadsForum
PCFreunde.deForumEntwicklungC#, .NET
Besucher online: 728
Schnellsuche

Anzeigen

Community

Foren
C#, .NET Seite 1/2
Webbrowser C#
AntwortenNeues ThemaZur akzeptierten AntwortZur Themenliste
Seiten:
1 2
Weiter
Nachricht
SHADOWBEAST
Titel: Webbrowser C# 09.12.2009 10:25
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Hi Leute!
Ich habe ein Programm (Windows Forms Anwendung - C#) mit drei Komponenten:

1. TextBox (Name: adresse)
2. Button (Name: start)
3. WebBrowser Komponente (Name: browser)

Jetzt soll bei einem Klick auf dem Button, die Eingabe von der Textbox, in die Browser Komponente als URL fließen und angezeigt werden.

Wie gehts das?
Wie kann ich der Browser Komponente was zuweisen?

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 10.12.2009 00:53
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
1 Mitglied findet diesen Beitrag gut
Du schreibst einfach beim Klick vom Button:
Zitat:
browser.Url = new Uri(adresse.Text);

Aber Achtung. Die Url muss richtig sein. also mit http://. Sonst schmeißt er nen Fehler.

mfg
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 15.12.2009 18:06
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Danke mal das geht super wenn ich schreibe:

Zitat:
browser.Url = new Uri("http://www.google.de/");


Ich möchte aber das es von der Textbox kommt, das geht aber nicht. Wenn ich nämlich schreibe:

Zitat:
browser.Url = new Uri("textBox1);


Dann hagelt es Unmengen von Fehler.
Was heißt das? Was kann ich dagegen tun?

Lg. Maximilian

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
L3oop
Titel: Webbrowser C# 15.12.2009 18:12
Moderator
45.021 Punkte (?)
Anmeldungsdatum: 25.04.2008
Beiträge: 9.399
Experte
browser.Url = new Uri("textBox1);

Ich kenne mich zwar weiter nicht mit C# aus, aber könnte es eventuell daran liegen, dass du das Anführungszeichen nicht geschlossen hast? Braucht man da überhaupt ein Anführungszeichen, dann wird es doch nur als einfacher String erkannt und nicht als Wert der Textbox, oder?

________________________________________
StereomixBootreihenfolge ändernPC beschleunigen
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 15.12.2009 18:17
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
Na du musst nur in meinem Code das "adresse" durch den Namen deiner textBox ersetzten.
Heißt dann also:

Zitat:
browser.Url = new Uri(textBox1.Text);

Anführungszeichen darfst keine angeben, du willst ja keinen neuen String initialisieren; sondern den hast ja schon im textBox1.Text.
edit: Und geöffnete, aber nicht geschlossene Anführungszeichen sind natürlich sowieso ein Fehler.

mfg

[Zuletzt bearbeitet: 15.12.2009 18:18]
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 15.12.2009 18:26
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Das hab ich geschrieben:

Zitat:
browser.Url = new Uri(textBox1);


(Das war grad ein Tippfehler SRY)

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 15.12.2009 18:33
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
? Wir reden aneinander vorbei.
Wenn du den Text aus einer textBox1 als URL willst heißt die entsprechende Zeile im Code:

Zitat:
browser.Url = new Uri(textBox1.Text);


mfg
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 15.12.2009 19:40
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
browser.Url = new Uri(textBox1.Text);

Wenn ich das schreibe gibt es nen Fehler

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 15.12.2009 19:57
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Danke das geht jetzt mal!
Jetzt möchte ich aber das man nur www.pcfreunde.de eingeben muss und das http:// drangehängt wird wieso geht das so nicht?:

webBrowser1.Url = new Uri("http://" + textBox1.Text);

DANKE!

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 15.12.2009 20:28
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
Keine Ahnung. Geht eigentlich schon so..auch wenns eine extrem unschöne Lösung ist ;)
Eventuell heißt deine WebBrowser-Komponente nicht webBrowser1. Bisher trug sie ja den Namen"browser". :?

mfg

[Zuletzt bearbeitet: 15.12.2009 20:29]
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 15.12.2009 20:56
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
1 Mitglied findet diesen Beitrag gut
Kommando zurück.
Verwende zum Ansurfen einer URL NICHT den Befehl
Zitat:
.Url = (...)

Sondern stattdessen
Zitat:
webBrowser1.Navigate(textBox1.Text);

Die Navigate Methode (aufgerufen mit einem String-Parameter) parst scheinbar den String automatisch durch und hängt "http://" bei Bedarf selbst an.

Hab da nochmal nachgeschaut, weil es mich eben verwundert hat, dass man das händisch lösen muss...

Übrigens, wenn du das Verhalten Browser-ähnlicher machen willst, solltest du nicht (nur) bei Button-Klick lossurfen sondern auch bei einem Enter im Textfeld:
Dazu machst du beim Textfeld ein KeyDown-Event und schreibst da rein:
Zitat:
if (e.KeyData == Keys.Enter) {
webBrowser1.Navigate(textBox1.Text);
}


mfg

[Zuletzt bearbeitet: 15.12.2009 20:57]
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 16.12.2009 13:48
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Danke mal! Bei dem Keydown sagt er mir aber:

Zitat:
Fehler 1 "System.EventArgs" enthält keine Definition für "KeyData", und es konnte keine Erweiterungsmethode "KeyData" gefunden werden, die ein erstes Argument vom Typ "System.EventArgs" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Dokumente und Einstellungen\Tschulik\Desktop\WindowsFormsApplication1\WindowsFormsApplication1\Form1.cs 52 19 WindowsFormsApplication1


Gibts auch ne Möglichkeit einen Zurück-Vor Button zu machen? xD

@ Vor Zurück hab ich herausgefunden:

-webBrowser1.GoBack();
-webBrowser1.GoForward();

[Zuletzt bearbeitet: 16.12.2009 13:56]

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 16.12.2009 14:03
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
Hast du das Event KeyDown richtig erstellt? Dazu klickst du im Designer auf das Textfeld, wählst bei den Eigenschaften oben "Events"(Das mit dem Blitz) und klickst dann doppelt auf die Zeile für KeyDown.
Dann wird dir so eine Methode erstellt:
Zitat:
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
}


mfg
Private Nachricht senden  
 
SHADOWBEAST
Titel: Webbrowser C# 16.12.2009 15:28
874 Punkte (?)
Anmeldungsdatum: 10.07.2008
Beiträge: 188
Tutorial Autor (?)
Ahhh.... Sehr Gut! Jetzt hab ich nur noch eine Frage:

Nachdem ich ENTER gedrückt habe, ist der Text aus der TextBox weg. Jetzt dachte ich mir ich leg das ganze vorher in einen String und weiß es nachher wieder zu. Aber wenn ich schreibe:

string adresse;

Und unten:

textBox1 = adresse;

Gehts nicht warum?

________________________________________
MfG. Maximilian :)
Private Nachricht senden  
 
xero
Titel: Webbrowser C# 16.12.2009 16:04
1.953 Punkte (?)
Anmeldungsdatum: 04.09.2006
Beiträge: 450
Tutorial Autor (?)
Erstens:
Wenn du den Text(=String) der Textbox willst musst du textBox1.Text nehmen. Ohne dem ".Text" greifst du ja auf das gesamte GUI-Element zu.

Zweitens:
Der Text sollte nicht verschwinden. Da musst du wo was falsches geschrieben haben.
Gib mal den Code der gesamten Classe an.

mfg
Private Nachricht senden  
 
AntwortenNeues ThemaZur akzeptierten AntwortZur Themenliste
Seiten:
1 2
Weiter
Community Login
eMail:
Passwort:
Auto-Login