65.9K
CodeProject 正在变化。 阅读更多。
Home

带验证功能和 MaskEdit 的文本框

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.61/5 (30投票s)

2003年5月31日

2分钟阅读

viewsIcon

213194

downloadIcon

1273

一个自定义控件,继承自 TextBox 类,并添加了输入验证功能、必填验证功能和 MaskEdit。

Sample screenshot

引言

这是我的第一个自定义控件,我决定这样做是为了学习这个主题,并使处理表单验证数据变得容易。 此控件继承了 TextBox 类中的所有属性和方法,并添加了一些输入和必填验证。 验证选项包括:

  • 无。
  • 有效字符验证。
  • 无效字符验证。
  • 字母验证。
  • 数字验证。
  • MaskEdit。
  • 正则表达式验证 (电子邮件、IP、URL、邮编、日期和自定义)。

使用代码

ValidText 像任何其他 .NET 组件一样,可以添加到 IDE 工具箱中,以便以图形方式放入 Windows 表单中,并从验证类别中的属性窗口修改其属性。 它也可以像引用一样使用,使用其方法并直接从代码中修改其属性,在生成其类的实例之后。

属性

  • ValitationMode (ValidationTypes): 设置用于文本或数据字段的验证模式。 此验证模式可以是:NoneVaidCharsInvalidCharsLettersNumbersMaskEditRegEX
  • MaskString (String): 当 ValidationMode = MaskEdit 时,设置输入数据的允许掩码。 字符 # 表示数字,A 表示大写字母,z 表示小写字母,$ 表示大写字母、小写字母或数字。 任何其他字符都将视为掩码中的固定字符。 例如:如果 ValidationMode 属性 = MaskEditMaskString = ###- (AAA) - ##/aa/AA/&&/$$$,用户可以在文本控件中输入 345 - ( ABC ) - 22/ad/CD/Ad/s3G 类型的数据。
  • ValidString (String): 设置当 ValidationMode = ValidCharsInvalidCharsRegEx 时允许的有效和无效字符。
  • ShowErrorIcon (Boolean): 设置是否在数据字段的验证中显示 ErrorProvider 的图标和工具提示。
  • Required (Boolean): 设置数据字段是否必须至少有一个字符才能进行验证。
  • Reference (String): 设置文本控件和要获取的数据字段之间的链接。 此属性用于创建验证错误消息。
  • RegExMode (RegExTypes): 设置用于文本或数据字段的正则表达式模式。 此正则表达式模式可以是:CustomEmailURLIPDateZIP
  • MessageLanguage (MessageLanguages) : 设置错误图标消息的语言。 (English, Español)

方法

  • requiredFieldsCheck: 此 ValidText 类的共享方法,如果作为参数发送的表单至少有一个 ValidText 控件,且其 Required 属性 = TRUE 并且 Text 属性 = "",则返回 true
    Private Sub btnAceptar_Click(ByVal sender As System.Object, _
                ByVal e As System.EventArgs) Handles btnAceptar.Click
        If ValidText.ValidText.requiredFieldsCheck(Me) = True Then
            MsgBox("OK!", MsgBoxStyle.Information, Me.Text)
            Me.Close()
        Else
            MsgBox("There are required fiels in the form!", _
                          MsgBoxStyle.Exclamation, Me.Text)
        End If
    End Sub
  • cancelRequiredFieldsCheck: 允许避免对作为参数发送的表单的 ValidText 控件的必填验证。
    Private Sub btnCancelar_Click(ByVal sender As System.Object,_
                  ByVal e As System.EventArgs) Handles btnCancelar.Click
    ValidText.ValidText.cancelrequiredFieldsCheck(Me)
    Me.Close()
    End Sub

注意:用于触发这些方法的按钮或其他控件需要将其 Causesvalidation 属性设置为 FALSE,以便可以访问其事件。

结论

请将反馈、评论和建议发送至:ra_luis@yahoo.com

© . All rights reserved.