INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Jobs

Calling User Control Validation

Calling User Control Validation

(OP)
Dumb question. I searched for an answer but didn't find what I was looking for. I want to create a user control for date entry that would consist of a textbox for typing a date and a date time picker for using the mouse. It will have some validations for valid dates, etc. That I can do. My question is once this control is on a windows form, how can I setup a validation event on the form that will run the validation of the user control and then let me do other stuff. Example: Using the control as an invoice date and recalculating the due date once the invoice date is validated. Here is a sample of what I would like to do only having it be the validation on the user control not the dtp.

CODE

Private Sub dtp_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles dtpInvoiceDate.Validated, dtpDueDate.Validated
      Dim myDtp As DateTimePicker
      myDtp = DirectCast(sender, DateTimePicker)
      If myDtp.Value = DateMinimum Then
        myDtp.CustomFormat = " "
      Else
        myDtp.CustomFormat = "MM/dd/yyyy"
      End If

      If myDtp.Name.ToUpper = "dtpInvoiceDate".ToUpper Then
        SetDueDate()
      End If
  End Sub 
Not sure how to set this up. Is this where I would use an override?

Auguy
Sylvania/Toledo Ohio

RE: Calling User Control Validation

First you declare an EventHandler in the user control:

Public dtpValidated As EventHandler

Then in the Validated event handler in the user control, raise that event:

Private Sub dtp_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles dtpInvoiceDate.Validated, dtpDueDate.Validated
Dim myDtp As DateTimePicker
myDtp = DirectCast(sender, DateTimePicker)
If myDtp.Value = DateMinimum Then
myDtp.CustomFormat = " "
Else
myDtp.CustomFormat = "MM/dd/yyyy"
End If

If myDtp.Name.ToUpper = "dtpInvoiceDate".ToUpper Then
SetDueDate()
End If

RaiseEvent dtpValidated(Me, e)
End Sub

Finally, in the form, just set up the event handler:

Private Sub UserControl1_dtpValidated(ByVal sender As Object, ByVal e As System.EventArgs) Handles UserControl1.dtpValidated
'do stuff and/or junk
End Sub

Now when the user control validates the date, it will raise an event to the containing form and you can do whatever you want there.

I used to rock and roll every night and party every day. Then it was every other day. Now I'm lucky if I can find 30 minutes a week in which to get funky. - Homer Simpson

Arrrr, mateys! Ye needs ta be preparin' yerselves fer Talk Like a Pirate Day!

RE: Calling User Control Validation

(OP)
Arrr! Thanks Matey!

Auguy
Sylvania/Toledo Ohio

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Resources

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close