473,503 Members | 8,131 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Custom Control

I have created a custom control button which when clicked displays a
message in the JavaScript alert dialog. I could successfully compile
the VB class file into a DLL & also could add it to the Toolbox in
Visual Web Developer 2005 Express Edition but the alert message isn't
popping up when I am implementing this control in an ASP.NET page &
clicking the Button in the ASPX page. This is the class file:

Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace MessageBox
Public Class ShowMsgBox : Inherits Button
Protected Overrides Sub AddAttributesToRender(ByVal Output As
HtmlTextWriter)
MyBase.AddAttributesToRender(Output)
Dim jsScript As String
jsScript = alert("Some Message Here")

Output.AddAttribute(HtmlTextWriterAttribute.OnClic k,
jsScript)
End Sub
End Class
End Namespace

This is the second way I tried it but this doesn't work as well

Namespace MessageBox
Public Class ShowMsgBox : Inherits Button
Protected Overrides Sub AddAttributesToRender(ByVal Output As
HtmlTextWriter)
MyBase.AddAttributesToRender(Output)
Output.AddAttribute(HtmlTextWriterAttribute.OnClic k,
"ShowMsg()")
End Sub

Protected Overrides Sub RenderContents(ByVal Output As
HtmlTextWriter)
Output.Write("<script language='JavaScript'>")
Output.Write(vbCrLf)
Output.Write("function ShowMsg(){")
Output.Write(vbCrLf)
Output.Write("alert('Some Message Here')")
Output.Write(vbCrLf)
Output.Write("}")
Output.Write(vbCrLf)
Output.Write("</script>")
End Sub
End Class
End Namespace

When I have a look at the source code, I find that the source code of
the button has 2 'onclick' events i.e. the button code looks like this:

<input type="submit" name="ShowMsgBox1" value="CLICK"
onclick="javascript:WebForm_DoPostBackWithOptions( new
WebForm_PostBackOptions(&quot;ShowMsgBox1&quot;, &quot;&quot;, true,
&quot;&quot;, &quot;&quot;, false, false))" id="ShowMsgBox1"
onclick="ShowMsg()" />

Where is the first 'onclick' event coming from? I guess that's the
cause of the problem.

Can someone please help me resolve this issue?

Oct 30 '06 #1
1 4759
After shooting a lot of arrows in the dark, I could finally nab the
culprit but still have been unable to resolve the issue.

Actually the ASPX page that uses the Button custom control also makes
use of a user control which encapsulates a few TextBoxes. All the
TextBoxes are accompanied by validation controls & the presence of
these validation controls is causing the Button source code to have 2
'onclick' events which, in turn, is preventing the JavaScript function
named 'ShowMsgBox' from getting invoked when this Button custom control
is clicked. If I get rid of the validation controls, then the source
code of the Button custom control changes to the more conventional one
with just one 'onclick' event:

<input type="submit" name="ShowMsgBox1" value="CLICK" id="ShowMsgBox1"
onclick="ShowMsg()"/>
Now, the JavaScript alert message pops-up when Button custom control is
clicked.

The problem is I just can't do without the validation controls for the
TextBoxes in the user control but at the same time, they are preventing
the JavaScript alert message from popping-up.

Any workaround to this?
rn**@rediffmail.com wrote:
I have created a custom control button which when clicked displays a
message in the JavaScript alert dialog. I could successfully compile
the VB class file into a DLL & also could add it to the Toolbox in
Visual Web Developer 2005 Express Edition but the alert message isn't
popping up when I am implementing this control in an ASP.NET page &
clicking the Button in the ASPX page. This is the class file:

Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace MessageBox
Public Class ShowMsgBox : Inherits Button
Protected Overrides Sub AddAttributesToRender(ByVal Output As
HtmlTextWriter)
MyBase.AddAttributesToRender(Output)
Dim jsScript As String
jsScript = alert("Some Message Here")

Output.AddAttribute(HtmlTextWriterAttribute.OnClic k,
jsScript)
End Sub
End Class
End Namespace

This is the second way I tried it but this doesn't work as well

Namespace MessageBox
Public Class ShowMsgBox : Inherits Button
Protected Overrides Sub AddAttributesToRender(ByVal Output As
HtmlTextWriter)
MyBase.AddAttributesToRender(Output)
Output.AddAttribute(HtmlTextWriterAttribute.OnClic k,
"ShowMsg()")
End Sub

Protected Overrides Sub RenderContents(ByVal Output As
HtmlTextWriter)
Output.Write("<script language='JavaScript'>")
Output.Write(vbCrLf)
Output.Write("function ShowMsg(){")
Output.Write(vbCrLf)
Output.Write("alert('Some Message Here')")
Output.Write(vbCrLf)
Output.Write("}")
Output.Write(vbCrLf)
Output.Write("</script>")
End Sub
End Class
End Namespace

When I have a look at the source code, I find that the source code of
the button has 2 'onclick' events i.e. the button code looks like this:

<input type="submit" name="ShowMsgBox1" value="CLICK"
onclick="javascript:WebForm_DoPostBackWithOptions( new
WebForm_PostBackOptions(&quot;ShowMsgBox1&quot;, &quot;&quot;, true,
&quot;&quot;, &quot;&quot;, false, false))" id="ShowMsgBox1"
onclick="ShowMsg()" />

Where is the first 'onclick' event coming from? I guess that's the
cause of the problem.

Can someone please help me resolve this issue?
Oct 31 '06 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
2423
by: Christian H | last post by:
Hi! I've created a custom control (myDrawControl) that deals with drawing. This control is then added to a form( myMainForm) Now, whenever something is dragged and dropped onto myDrawControl ,...
15
10921
by: Tinus | last post by:
Hello all, I've created a custom control that draws a monthly schedule (using the Draw function in C#). Basically it draws 31 boxes and writes the day number in every box. This works...
21
2065
by: One Handed Man \( OHM - Terry Burns \) | last post by:
When using a custom control. In order to check and see if values have changed one has to implement the IPostBackDataCollection interface. The values returned for the control seem to be simply a...
1
1853
by: Wannabe_Geek | last post by:
Hi Iam new to MS .Net technology just getting along with it....I created a custom control ,which takes in a query and displays the data in a tabular format....something similar to a datagrid. ...
7
2972
by: Shimon Sim | last post by:
I have a custom composite control I have following property
2
2564
by: Suzanne | last post by:
Hi all, I'm reposting this message as I'm experiencing this problem more and more frequently : I really hope someone out there can help me as I've been tearing my hair out on this one for a...
4
1759
by: Smokey Grindle | last post by:
What is the best way to write dynamic controls in ASP.NET 2.0?
11
18070
by: Pete Kane | last post by:
Hi All, does anyone know how to add TabPages of ones own classes at design time ? ideally when adding a new TabControl it would contain tab pages of my own classes, I know you can achieve this with...
15
6472
by: rizwanahmed24 | last post by:
Hello i have made a custom control. i have placed a panel on it. I want this panel to behave just like the normal panel. The problem i was having is that the panel on my custom control doesnt...
5
4077
by: gerry | last post by:
I am trying to create a custom container control that will only ever contain a specific type of control. At design time, when a control of a different type is added to the container I would like...
0
7207
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7291
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7357
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
7012
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
7468
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
5598
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
5023
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
3171
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
748
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.