Solved

Help with controlling data entered in a Textbox

Posted on 2011-09-22
12
252 Views
Last Modified: 2012-05-12
Hi,

I have several Textboxes which data needs to be entered in a certain format.

For examplem how do I force users to enter data in the folloing format?

xx,xxxx - Numbers only, 7 characters long

and check to see if the data was enteres in the proper format. I am using VB.NET code.

Thanks,

Victor
0
Comment
Question by:vcharles
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
12 Comments
 
LVL 17

Expert Comment

by:nepaluz
ID: 36581961
First, you can set a mask for your textbox then add handlers to ensure only numbers are entered
0
 
LVL 17

Expert Comment

by:nepaluz
ID: 36581985
Here is a handler for the KeyPress event to use for your textbox named TextBox1
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) 'Handles TextBox1.KeyPress
        e.Handled = TrapKey(CStr(Asc(e.KeyChar)))
End Sub

Open in new window

This calls the following function on every keypress
Private Function TrapKey(ByVal KCode As String) As Boolean
    If (CDbl(KCode) >= 48 And CDbl(KCode) <= 57) Or {8, 46, 44, 127, 45}.Contains(CInt(KCode)) Then
        TrapKey = False
    Else
        TrapKey = True
    End If
End Function

Open in new window

0
 

Author Comment

by:vcharles
ID: 36582009
Sorry, I don't quiet follow your code. How does it force the users to enter the data in the following format. 67,8978?
0
PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

 
LVL 17

Expert Comment

by:nepaluz
ID: 36582228
Like I said before, apply a mask to your textbox aka use a masked texbox and the code above only ensures that the only data allowed to be entered is numerical.

0
 

Author Comment

by:vcharles
ID: 36583491
I Just checked all the properties of my Textbox and can't find a property the mask the textbox. Are you referring to another control similar to the reguklar textbox?
0
 
LVL 17

Expert Comment

by:nepaluz
ID: 36583612
be right back ....
0
 

Author Comment

by:vcharles
ID: 36589994
Help!
0
 
LVL 21

Expert Comment

by:Dale Burrell
ID: 36937473
nepaluz was referring to windows forms.net, not asp.net. There are many components out there which do the same thing for asp.net though, 3 follow... does this help?

http://www.codeproject.com/KB/edit/MaskTextBox.aspx
http://www.codeproject.com/KB/aspnet/Xtended_TextBox.aspx?q=masked+textbox+asp.net
http://www.codeproject.com/KB/aspnet/MaskingText_for_ASPNET.aspx?q=masked+textbox+asp.net

I haven't used one myself so I can't comment on specifics.
0
 
LVL 12

Accepted Solution

by:
CmdoProg2 earned 500 total points
ID: 36948622
The masked edit extender from the ajax controls toolkit is an option.  You can also try using a standard regular expression validator:

 
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" 
            Display="Dynamic" ErrorMessage="Required"></asp:RequiredFieldValidator>
        <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
            ErrorMessage="Invalid Format (xx,xxx)" ValidationExpression="\d{2},\d{3}" ControlToValidate="TextBox1" 
            Display="Dynamic"></asp:RegularExpressionValidator>
        <asp:Button ID="Button1" runat="server" Text="Button" />

Open in new window


Or in the code behind, use a Regex object:

Dim rx As New Regex("\d{2},\d{3}")
    If rx.IsMatch(TextBox1.Text) Then
      ' place code here when in correct formae
    End If

Open in new window

0
 

Author Closing Comment

by:vcharles
ID: 36948687
Thank You All for all your Help!
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
This article will inform Clients about common and important expectations from the freelancers (Experts) who are looking at your Gig.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
Starting up a Project

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question