Hey Ho Leute,
Wie ihr sicher wisst wollen viele einen eigenen Webbrowser machen.Aber
es gibt fast immer das gleiche Problem: Lesezeichen? Wie?
Jetzt habe ich mal überall gekuckt und was gefunden.
Lesezeichen mit Titel der Website und Url.
Das alles wird in einer Xml datei abgespeichert.
Dann wollen wir mal anfangen.
Wir brauchen:
Eine Form1 und eine Form2
Form1:
Einen Toolstrip
mit einer ToolstripCombobox
dann noch einen Toolstripbutton mit dem Text : Lesezeichen Manager
Unteranderem noch einen Webbrowser, einen weiteren ToolStrip und noch einen MenuStrip mit dem Item: Lesezeichen
Form2:
Der Name ist Manager
wir fügen 2 TextBoxen hinzu (Name und URL) und 2 Buttons (Hinzufügen und Löschen)
und einen ListView mit 2 Colums(Website und URL)
So das wars schonmal mit dem Design.
Jetzt zum Code:
Form1:
Jetzt zur Manager Form:
Achtung: Die Xml Datei muss im gleichen Ordner sein wie euer Programm.
So das wars.
Ich stelle noch das ganze Projekt rein.
Viel spaß!!!!!
Download Source: Klick
Wie ihr sicher wisst wollen viele einen eigenen Webbrowser machen.Aber
es gibt fast immer das gleiche Problem: Lesezeichen? Wie?
Jetzt habe ich mal überall gekuckt und was gefunden.
Lesezeichen mit Titel der Website und Url.
Das alles wird in einer Xml datei abgespeichert.
Dann wollen wir mal anfangen.
Wir brauchen:
Eine Form1 und eine Form2
Form1:
Einen Toolstrip
mit einer ToolstripCombobox
dann noch einen Toolstripbutton mit dem Text : Lesezeichen Manager
Unteranderem noch einen Webbrowser, einen weiteren ToolStrip und noch einen MenuStrip mit dem Item: Lesezeichen
Form2:
Der Name ist Manager
wir fügen 2 TextBoxen hinzu (Name und URL) und 2 Buttons (Hinzufügen und Löschen)
und einen ListView mit 2 Colums(Website und URL)
So das wars schonmal mit dem Design.
Jetzt zum Code:
Form1:
VB.NET-Quellcode
- Imports System.Xml
- Public Class Form1
- Friend WithEvents tsbWebSite1 As System.Windows.Forms.ToolStripButton
- Dim xmldoc As New XmlDocument
- Private Sub AddTSButton(ByVal buttonName As String, ByVal webSiteName As String)
- Dim newbutton As New System.Windows.Forms.ToolStripButton
- Dim newle As New System.Windows.Forms.ToolStripMenuItem
- newle.Name = buttonName
- newle.Text = webSiteName
- newle.DisplayStyle = ToolStripItemDisplayStyle.Text
- newbutton.Name = buttonName
- newbutton.Text = webSiteName
- newbutton.DisplayStyle = ToolStripItemDisplayStyle.Text
- ToolStrip2.Items.Add(newbutton)
- LesezeichenToolStripMenuItem.DropDownItems.Add(newle)
- AddHandler newbutton.Click, AddressOf tsbutton_Click
- AddHandler newle.Click, AddressOf tsbutton_Click
- End Sub
- Public Sub AddToolStripButtons()
- xmldoc.Load(My.Application.Info.DirectoryPath & "\Bookmarks.xml")
- ToolStrip2.Items.Clear()
- LesezeichenToolStripMenuItem.DropDownItems.Clear()
- Dim websiteNodes As XmlNodeList
- Dim webSiteNode As XmlNode
- websiteNodes = xmldoc.GetElementsByTagName("WebSite")
- Dim iCount As Integer = 1
- For Each webSiteNode In websiteNodes
- Dim eachSiteNodes As XmlNodeList
- Dim eachSiteNode As XmlNode
- eachSiteNodes = webSiteNode.ChildNodes
- For Each eachSiteNode In eachSiteNodes
- If eachSiteNode.Name = "Name" Then
- AddTSButton("tsWebsite" & iCount.ToString, eachSiteNode.InnerText)
- iCount += 1
- End If
- Next
- Next
- End Sub
- Private Sub WebBrowser1_NewWindow(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
- e.Cancel = True
- End Sub
- Private Sub tsbutton_Click(ByVal sender As Object, ByVal e As System.EventArgs)
- Try
- Dim aButton As ToolStripButton = CType(sender, ToolStripButton)
- GoToUrl(aButton.Text)
- Catch ex As Exception
- Dim a As ToolStripMenuItem = CType(sender, ToolStripMenuItem)
- GoToUrl(a.Text)
- End Try
- End Sub
- Private Sub GoToUrl(ByVal sWebsite As String)
- Dim xPath As String = "//WebSite[Name='" & sWebsite & "']/URL"
- Dim xn As XmlNode = xmldoc.SelectSingleNode(xPath)
- WebBrowser1.Navigate(xn.InnerText)
- 'ctype(tabcontrol1.selectedtab.controls(0), webbrowser).navigate(xn.innertext)
- End Sub
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- AddToolStripButtons()
- WebBrowser1.Navigate("http://www.google.de/")
- End Sub
- Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click
- Manager.Show()
- AddToolStripButtons()
- End Sub
- Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
- WebBrowser1.Navigate(ToolStripComboBox1.Text)
- ToolStripComboBox1.Items.Add(ToolStripComboBox1.Text)
- End Sub
- Private Sub ToolStripComboBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ToolStripComboBox1.KeyDown
- If e.KeyCode = Keys.Enter Then
- ToolStripButton1_Click(Nothing, Nothing)
- End If
- End Sub
- Private Sub ToolStripLabel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripLabel1.Click
- End Sub
- End Class
Jetzt zur Manager Form:
VB.NET-Quellcode
- Imports System.Xml
- Public Class Manager
- Private Sub LoadList()
- ListView1.Items.Clear()
- Dim rdrXML As New XmlTextReader(My.Application.Info.DirectoryPath & "\Bookmarks.xml")
- rdrXML.MoveToContent()
- Dim ElementName As String = ""
- Dim NextItem As Boolean = True
- Dim objListViewItem As ListViewItem = Nothing
- Do While rdrXML.Read
- If NextItem Then
- objListViewItem = New ListViewItem
- NextItem = False
- End If
- Select Case rdrXML.NodeType
- Case XmlNodeType.Element
- ElementName = rdrXML.Name
- Case XmlNodeType.Text
- If ElementName = "Name" Then
- objListViewItem.Text = rdrXML.Value
- End If
- If ElementName = "URL" Then
- objListViewItem.SubItems.Add(rdrXML.Value)
- ListView1.Items.Add(objListViewItem)
- NextItem = True
- End If
- End Select
- Loop
- rdrXML.Close()
- End Sub
- Private Sub savelist()
- Dim wtrXML As New XmlTextWriter(My.Application.Info.DirectoryPath & "\Bookmarks.xml", System.Text.Encoding.UTF8)
- With wtrXML
- .Formatting = Formatting.Indented
- .WriteStartDocument()
- .WriteStartElement("WebSites")
- Dim objListViewItem As New ListViewItem
- For Each objListViewItem In ListView1.Items
- .WriteStartElement("WebSite")
- .WriteElementString("Name", objListViewItem.Text)
- .WriteElementString("URL", objListViewItem.SubItems(1).Text)
- .WriteEndElement()
- Next
- .WriteEndElement()
- .WriteEndDocument()
- .Flush()
- .Close()
- End With
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Dim objListViewItem As New ListViewItem
- objListViewItem.Text = TextBox1.Text
- objListViewItem.SubItems.Add(TextBox2.Text)
- ListView1.Items.Add(objListViewItem)
- TextBox1.Clear()
- TextBox2.Clear()
- savelist()
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- Dim indexes As ListView.SelectedIndexCollection = ListView1.SelectedIndices
- Dim index As Integer
- For Each index In indexes
- ListView1.Items.RemoveAt(index)
- Next
- savelist()
- End Sub
- Private Sub Manager_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
- Form1.AddToolStripButtons()
- End Sub
- Private Sub Manager_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- LoadList()
- TextBox1.Text = Form1.WebBrowser1.DocumentTitle
- TextBox2.Text = Form1.WebBrowser1.Url.AbsoluteUri
- End Sub
- End Class
Achtung: Die Xml Datei muss im gleichen Ordner sein wie euer Programm.
So das wars.
Ich stelle noch das ganze Projekt rein.
Viel spaß!!!!!
Download Source: Klick
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „One“ ()