1

我是编程新手,所以这可能是一个有点奇怪的问题。

我有一个带有几个文本框的简单表单。我需要验证用户输入,所以我为此文本框创建了验证事件。

Private Sub txtTest_Validating(sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtTest.Validating
    ValidateInputMinMax(CType(sender, Control), e)
End Sub

从这个事件处理程序我调用私人子ValidateInputMinMax,我使用

ErrorProvider.SetError

e.canle = True

基于一些验证标准。我有几个这样的处理程序和私人潜艇,我想从表单类移动到新的自定义类。这可以做到吗?

我尝试将所有这些复制到自定义类并使用事件声明:

Dim WithEvents txtTest as TextBox

现在我被困住了。我什至在正确的轨道上吗?

4

2 回答 2

1

像这样 ..

Private Sub txtTest_Validating(sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtTest.Validating
    ValidateInputMinMax((CType(sender), Textbox),e)
End Sub
于 2013-05-31T08:33:40.840 回答
0

您需要使用委托。

Public Class Form1

  Friend WithEvents exampleControl1 As New ExampleControl


  Private Sub exampleControl1_Events(ByVal eventNumber As Integer) Handles_
 exampleControl1.Event1


  End Sub


End Class

Public Class ExampleControl
  Inherits System.Windows.Forms.UserControl

  Public Event Event1(ByVal eventNumber As Integer)

  Private Sub ExampleMethod()

    RaiseEvent Event1(1)

  End Sub

End Class

http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/9e594807-49fd-448a-9804-6f5edd6cb2b0

http://msdn.microsoft.com/en-us/library/ms172879.aspx

于 2013-05-31T08:51:48.287 回答