Microsoft & .NETVisual BasicAdding Hyperlink Capability to RichText Boxes

Adding Hyperlink Capability to RichText Boxes

Developer.com content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

This tip show how to add hyperlinks into a RichTextBox. What you need to create is two classes that will interact with the RichTextBox.

The two classes are CHyperlink and CHyperlinks.

CHyperlink

CHyperLink is a simple Class that describes a hyperLink and has a method to open the URL it points to.

Properties:

  • LinkUrl
  • LinkText

Methods:

  • OpenLink

The LinkUrl property is a string containing the URL (for example: http://www.microsoft.com).

The LinkText property is a string containing the text shown in the RTF box (Click here to go to Microsoft).

The OpenLink methods use the ShellExecute API function to launch the default webbrowser and passes the URL to it.

CHyperLinks

CHyperLinks is a collection class. It contains a collection of CHyperLink objects. When you develop an application you only need to create an object of the CHyperLinks class. CHyperLinks also uses VB WithEvent keyword to "catch" the events of the RTF box that have the hyperlinks.

Properties:

  • Normal collection properties as Count, Item and NewEnum.
  • RichTextBox

Methods:

  • Add
  • Remove

The RichTextBox property is actually a RichTextBox object. You must set this object to a RichTextBox on a form.

The Add methods takes three arguments:

object.Add LinkText, LinkURL [, Key]

For example lets say you have a RichTextBox, named RichTextBox1, on a form and you want to add a hyperlink to Developer.com to it. Then use this code:

Option Explicit
Private hlkLinks As New CHyperLinks

Private Sub Form_Load()
    Set hlkLinks.RichTextBox = RichTextBox1
    hlkLinks.Add "Go to Developer.com",_
    "www.developer.com"
End Sub

The Add method will add a CHyperLink object to the collection AND add the text "Go to Developer.com" to the RichTextBox1 object. This text will be underlined and in the color blue.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories