ASP.NET Custom Server Controls: Cute ToolTip Control with Better Framework - What are the properties declared and how do I work with the control?
(Page 2 of 6 )
As I wanted the tooltip control to be as simple as possible, I declared only one property i.e., “IsDesignTime”. It is declared as “private” within the control class. It is created with the following code:
Private ReadOnly Property IsDesignTime()
Get
Return (Not Me.Site Is Nothing) AndAlso
(Me.Site.DesignMode)
End Get
End Property
It checks whether the control is at the stage of design-time or run-time. This is very important for me to determine whether the control needs to emit JavaScript or not. During design-time, it is not necessary to emit JavaScript! It needs to be emitted only at run-time. You also need to observe that the property is “readonly” (no changes) and it is private (can be used only within the class and not outside the class). I used it only within the “Render” method.
To work with this control, we need to drag it from the toolbox (after adding it to the toolbox) onto the design surface. We can drag it to any location, as it is by default invisible at run-time. After placing it onto the surface, we need to bind the tooltip to all of our respective controls during the “page load” event. The following is the code-fragment I used as part of the demonstration:
Me.TextBox1.Attributes.Add("onMouseOver", "ShowToolTip
(event,'this is first sample message',100);")
Me.TextBox1.Attributes.Add("onMouseOut", "HideToolTip
();")
Me.TextBox2.Attributes.Add("onMouseOver", "ShowToolTip
(event,'this is second sample message',100);")
Me.TextBox2.Attributes.Add("onMouseOut", "HideToolTip
();")
The first statement adds the “OnMouseOver” event attribute to “TextBox1” by calling the JavaScript function “ShowToolTip”. This is similar to the second statement with the “onMouseOut” event and “hideToolTip” JavaScript functions.
In that way, I used the same tooltip control for both “TextBox1” and “TextBox2” on my web page (as seen in the above code).
Next: How is it rendered? >>
More ASP.NET Articles
More By Jagadish Chaterjee