This may seem like a strange control to create. I mean, the
RichTextBox can do almost anything you need. The idea for this came when I was making my AIM Custom Client. For those of you that don't know, AOL released an SDK that can access the AIM network, which leads me to my point. The AIM network uses an HTML type formatting. Seemed easy enough at first, since I just needed to convert text. But then came the problems of the tag not being able to show the same size as the RTF font size, the AIM UI not recognizing the tag, etc. So I just made this control to help me out a bit, and put it on here in case anyone needed text in HTML format.
How it Works
This control was simple enough to put together. Inherit the
RichTextControl (so you can still access and format in RTF if need be) and add a couple properties and a function. There are three properties and a function that I added:
HTML, and the function
GenerateHTML. The two functions are key to this control. The
SpanTag property tells the control to format the HTML using HTML tags. This allows for easier formatting inline. The
StyleTag property uses the HTML header to declare a format, then in the body, uses the formatting on text. The HTML property does the exact same thing (it calls the
GenerateHTML function) and returns the HTML text. Simple enough.
How to Use
This control is very simple to use. You type in text normally (or enter it in programmatically), and then you can either call the function directly, as so:
Private Sub GetHtml()
Dim str As String = Me.HtmlTextBox1.GenerateHTML()
Or you can read the HTML property. That's it, you now have an HTML formatted
I am hoping to add functionality, such as formatting individual words, not just the
Font. This will come later.
Any questions or comments, feel free to e-mail me at JMMGoalster at yahoo dot com.
- July 15, 2006 - Initial version.
- July 26, 2006 - Version 2. Added the Tag functionality and fixed a bug... See comments.
- September 07, 2006 - Version 2.1. Made available to VS2003.