470,579 Members | 2,192 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 470,579 developers. It's quick & easy.

Using Validation Controls with Page.ParseControl

Hi,

I'm playing around with the possibilities of Page.ParseControl.
I parse a string with an input-field and an RequiredFieldValidator-control.

For testing the server-side validation I disable JavaScript
and get this scenario:

- When you enter a name, no warning appears, that's good!
- When you don't enter a name, the warning appears, that's very good!

So everything seems to be right.

But what, if you get the idea to check in your code, whether the form is
valid or not, by using "If Page.IsValid", perhaps this way:

---parsetest.aspx--- --- --- --- --- --- --- --- --- --- --- --- --- --- ---

<%@ Page Language="vb" AutoEventWireup="false"
Codebehind="parsetest.aspx.vb" Inherits="Xorum.parsetest" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>parsetest</title>
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema"
content="http://schemas.microsoft.com/intellisense/ie5">
</head>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
<p runat="server" id="kommentar" ></p>
</body>
</html>
--- ---
parsetest.aspx.vb --- --- --- --- --- --- --- --- --- --- --- --- --- --- --

Public Class parsetest
Inherits System.Web.UI.Page
Protected form1 As System.Web.UI.HtmlControls.HtmlForm
Protected kommentar As System.Web.UI.HtmlControls.HtmlGenericControl
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim s As String
s = "What is your name? <br><br><input runat='server' id='txtName'
type='text' ><asp:RequiredFieldValidator id='reqTxtName'
ControlToValidate='txtName' Display='dynamic' runat='server'>
Please enter your name.</asp:RequiredFieldValidator> <br><br><input
runat='server' type='submit' value=' OK ' ><br><br><asp:Label id='meldung'
runat='server' />"
form1.Controls.Add(Page.ParseControl(s))
If IsPostBack Then
Page.Validate()
If Page.IsValid Then
kommentar.InnerHtml &= "OK "
Else
kommentar.InnerHtml &= "Not OK "
End If
End If
End Sub
End Class
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---

This is the result:
The validation works correctly, but using "Page.IsValid" will ALWAYS return
false. Even if the
validation control works correctly and no warning appears, there will be the
message "Not OK "!!!
On the other side: When I use just this code, but don't use
Page.ParseControl, but
insert the code for the form and the validation-control right into the
aspx-Page, everything works
fine and Page.IsValid will always say correctly, whether the form is valid
or not.
Any idea?
Thank you
Matthias
Nov 17 '05 #1
1 3297
Hi
Before calling page.IsValid, you should call Page.Validate

Page.Validate
Page.IsValid

--
Thank you.

Satish Appasani
#201, Wing - 1, Block - D
Cyber Gateway
Hyderabad - 500 081, India
Phone: +91(40)2311-1356 Ext-122
Mobile: +91(40)333-31032
E-mail: sa****@vertexcs.com
"Matthias Lohrer" <ma*************@mlohrer.de> wrote in message
news:3f*********************@read.news.de.uu.net.. .
Hi,

I'm playing around with the possibilities of Page.ParseControl.
I parse a string with an input-field and an RequiredFieldValidator-control.
For testing the server-side validation I disable JavaScript
and get this scenario:

- When you enter a name, no warning appears, that's good!
- When you don't enter a name, the warning appears, that's very good!

So everything seems to be right.

But what, if you get the idea to check in your code, whether the form is
valid or not, by using "If Page.IsValid", perhaps this way:

---parsetest.aspx--- --- --- --- --- --- --- --- --- --- --- --- --- --- - --
<%@ Page Language="vb" AutoEventWireup="false"
Codebehind="parsetest.aspx.vb" Inherits="Xorum.parsetest" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>parsetest</title>
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema"
content="http://schemas.microsoft.com/intellisense/ie5">
</head>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
<p runat="server" id="kommentar" ></p>
</body>
</html>
--- ---
parsetest.aspx.vb --- --- --- --- --- --- --- --- --- --- --- --- --- --- --
Public Class parsetest
Inherits System.Web.UI.Page
Protected form1 As System.Web.UI.HtmlControls.HtmlForm
Protected kommentar As System.Web.UI.HtmlControls.HtmlGenericControl
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim s As String
s = "What is your name? <br><br><input runat='server' id='txtName'
type='text' ><asp:RequiredFieldValidator id='reqTxtName'
ControlToValidate='txtName' Display='dynamic' runat='server'>
Please enter your name.</asp:RequiredFieldValidator> <br><br><input
runat='server' type='submit' value=' OK ' ><br><br><asp:Label id='meldung'
runat='server' />"
form1.Controls.Add(Page.ParseControl(s))
If IsPostBack Then
Page.Validate()
If Page.IsValid Then
kommentar.InnerHtml &= "OK "
Else
kommentar.InnerHtml &= "Not OK "
End If
End If
End Sub
End Class
--- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- ---

This is the result:
The validation works correctly, but using "Page.IsValid" will ALWAYS return false. Even if the
validation control works correctly and no warning appears, there will be the message "Not OK "!!!
On the other side: When I use just this code, but don't use
Page.ParseControl, but
insert the code for the form and the validation-control right into the
aspx-Page, everything works
fine and Page.IsValid will always say correctly, whether the form is valid
or not.
Any idea?
Thank you
Matthias

Nov 17 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

reply views Thread by Matthias Lohrer | last post: by
4 posts views Thread by Kevin Phifer | last post: by
2 posts views Thread by anthonykallay | last post: by
1 post views Thread by livre | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.