login  Naam:   Wachtwoord: 
Registreer je!
 Nota's op tutorial:

Tutorials > C#.NET > [C#] Zelf een WebBrowser maken
Pagina:

Reacties op de tutorial [C#] Zelf een WebBrowser maken


Offline  Koen
Gepost op: 26 februari 2009 - 14:48
PHP expert

Nette tutorial!

Die van jou is wel wat mooier dan die van mij  
Duidelijk uitgelegd, en:

I <3 die custom knopjes 

Groetjes

Offline  mothh
Gepost op: 26 februari 2009 - 19:30
Onbekend

heeeeel erg bedankt!!!!!!!!!!!!!!!!!!!!!

Offline  mothh
Gepost op: 26 februari 2009 - 20:20
Onbekend

ik krijg de hele tijd een error van dat ik de code's verkeerd neerzet
kan je anders niet even de gehele code even geven?
of mijn code verbeteren?
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9.  
  10. namespace WindowsFormsApplication2
  11. {
  12. public partial class frmMain : Form
  13. {
  14. public frmMain()
  15. {
  16. InitializeComponent();
  17. }
  18.  
  19. private void Form1_Load(object sender, EventArgs e)
  20. {
  21. browseWindow.CanGoBackChanged += new EventHandler(browseWindow_CanGoBackChanged);
  22. browseWindow.CanGoForwardChanged += new EventHandler(browseWindow_CanGoForwardChanged);
  23. browseWindow.DocumentTitleChanged += new EventHandler(browseWindow_DocumentTitleChanged);
  24. browseWindow.StatusTextChanged += new EventHandler(browseWindow_StatusTextChanged);
  25. }
  26. private void browseWindow_StatusTextChanged(object sender, EventArgs e)
  27. {
  28. lblStatus.Text = browseWindow.StatusText;
  29. }
  30.  
  31. private void browseWindow_DocumentTitleChanged(object sender, EventArgs e)
  32. {
  33. Text = "CustomBrowser - " + browseWindow.DocumentTitle;
  34. }
  35. private void browseWindow_CanGoForwardChanged(object sender, EventArgs e)
  36. {
  37. btnVolgende.Enabled = browseWindow.CanGoForward;
  38. }
  39.  
  40. private void browseWindow_CanGoBackChanged(object sender, EventArgs e)
  41. {
  42. btnVorige.Enabled = browseWindow.CanGoBack;
  43. }
  44.  
  45. private void bestandToolStripMenuItem_Click(object sender, EventArgs e)
  46. {
  47.  
  48. }
  49.  
  50. private void btnVorige_Click(object sender, EventArgs e)
  51. {
  52. browseWindow.GoBack();
  53. }
  54.  
  55. private void btnVolgende_Click(object sender, EventArgs e)
  56. {
  57. browseWindow.GoForward();
  58. }
  59.  
  60. private void btnZoek_Click(object sender, EventArgs e)
  61. {
  62. browseWindow.GoSearch();
  63. }
  64.  
  65. private void btnHome_Click(object sender, EventArgs e)
  66. {
  67. browseWindow.GoHome();
  68. }
  69.  
  70. private void btnRefresh_Click(object sender, EventArgs e)
  71. {
  72. browseWindow.Refresh(WebBrowserRefreshOption.Normal);
  73. }
  74.  
  75. private void btnGo_Click(object sender, EventArgs e)
  76. {
  77. NavigateToUrl();
  78. }
  79. private void NavigateToUrl()
  80. {
  81. strUrl = txtUrl.Text.Trim().ToLower();
  82. if (IsValidUrl(strUrl))
  83. browseWindow.Navigate(strUrl);
  84.  
  85. }
  86. private bool IsValidUrl(string input)
  87. {
  88. Regex RgxUrl = new Regex("^(((h|H?)(t|T?)(t|T?)(p|P?)(s|S?))\\://)?(www.|[a-zA-Z0-9].)[a-zA-Z0-9\\-\\.]+\\.[a-zA-Z]*$");
  89. if (String.IsNullOrEmpty(input))
  90. return false;
  91. if (RgxUrl.IsMatch(input))
  92. return true;
  93. else
  94. return false;
  95. }
  96.  
  97. private void openURLToolStripMenuItem_Click(object sender, EventArgs e)
  98. {
  99. txtUrl.Focus();
  100. }
  101.  
  102. private void openBestandToolStripMenuItem_Click(object sender, EventArgs e)
  103. {
  104. if (openHtmlFile.ShowDialog() == DialogResult.OK)
  105. browseWindow.Navigate(openHtmlFile.FileName);
  106. }
  107.  
  108. private void afsluitenToolStripMenuItem_Click(object sender, EventArgs e)
  109. {
  110. Applcation.Exit();
  111. }
  112.  
  113. private void navigatedReady(object sender, WebBrowserNavigatedEventArgs e)
  114. {
  115. txtUrl.Text = browseWindow.Url.ToString();
  116. }
  117.  
  118. private void updateProgress(object sender, EventArgs e)
  119. {
  120. int percentage = Convert.ToInt32(Math.Floor(Convert.ToDouble((e.CurrentProgress / e.MaximumProgress) * 100)));
  121. statusProgress.Value = percentage;
  122. }
  123. private void browseWindow_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
  124. {
  125. statusProgress.Value = statusProgress.Minimum;
  126. }
  127.  
  128.  
  129. }
  130. }

Offline  Koen
Gepost op: 27 februari 2009 - 00:00
PHP expert

@mothh: Zonder error zijn we ook niet veel...

Offline  Wijnand
Gepost op: 27 februari 2009 - 09:35
Moderator

Een vraag, je gebruikt nu de engine van IE of niet? Kun je ook een andere 'engine' gebruiken ofzo?

Verder, hoe kun je hier nu een bestand van maken die je kunt laden (.exe ofzo)?

edit: Titjes, er zit een spelfout in: Applcation.Exit(); = Application.Exit();

Offline  mothh
Gepost op: 27 februari 2009 - 12:09
Onbekend

@wijnand:
ja je kan ook andere engines gebruiken alleen dan moet je c++ of zo iets doen c++ is firefox


een vraag aan titjes: ik krijg het gedeelte:
Zorg dat je een private string 'strUrl' declareert helemaal bovenaan je codefile. Deze wordt gebruikt in deze functie. Je ziet ook de aanroep van een functie IsValidUrl(), deze zit niet in het .NET Framework maar heb ik zelf geschreven. Hieronder is de code van de functie, deze plaats je gewoon onder het event van de 'btnGo'-knop.

er niet echt in ik snap daar niks van en de code:
  1. private void NavigateToUrl()
  2. {
  3. strUrl = txtUrl.Text.Trim().ToLower();
  4. if (IsValidUrl(strUrl))
  5. browseWindow.Navigate(strUrl);
  6. }



hoe declareer ik een privete string de zogenaamde strUrl

en wat betekent declareert


help! dankje

Offline  Abbas
Gepost op: 27 februari 2009 - 13:47
Gouden medaille

Crew .NET


@Wijnand:
De WebBrowser Control is inderdaad gebaseerd op de IE engine. Het zal waarschijnlijk wel mogelijk zijn om op een andere manier te werken, al weet ik niet direct hoe. 

Als je Project volledig klaar is dubbelklik je op 'Properties' in je Solution Explorer. Hierin ga je naar het tabblad 'Publish' en klik je rechtsonder op 'Publish Now'. Er wordt dan in de map van je Project een map 'publish' aangemaakt. Hierin staat de Setup-file van het programma en kan je het installeren.

@motth:
Een variabele declareren is ruimte in het geheugen vrijmaken. In PHP gebeurt dit niet op dezelfde manier, maar in JAVA is het net hetzelfde. Een integer 'x' declareren is bijvoorbeeld: int x. Een private string 'strUrl' declareren doe je zo: private string strUrl.

Offline  mothh
Gepost op: 27 februari 2009 - 13:55
Onbekend

oke dankje ik zal kijken of het werkt

Offline  mothh
Gepost op: 27 februari 2009 - 15:33
Onbekend

hij doet het inmiddels

Offline  Kwarde
Gepost op: 12 september 2010 - 08:30
Nieuw lid

Nice Tutorial 
Alleen ik krijg twee Regex error's:

"Error 1" schreef:
Error 1 The type or namespace name 'Regex' could not be found (are you missing a using directive or an assembly reference?) C:UsersKwardeDocumentsC# ProjectenMiniBrowserMiniBrowser.cs 90 13 MiniBrowser

"Error 2" schreef:
Error 2 The type or namespace name 'Regex' could not be found (are you missing a using directive or an assembly reference?) C:UsersKwardeDocumentsC# ProjectenMiniBrowserMiniBrowser.cs 90 32 MiniBrowser


Als je kan helpen; bedankt ;)

Twee o

Pagina:

Enkel aanvullende informatie is welkom. Geen prijzende of afkeurende reacties.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.039s