1

我有一个方法可以验证组合框控件,如下所示:

Public Function ValidateComboBox(ByVal objMessageMode As Errors.MessageMode, ByVal cboInput As ComboBox) As Boolean

    Dim blnValidated As Boolean

    'no value--invalidate'
    If cboInput.SelectedValue Is Nothing Then
        Errors.InvalidateField(cboInput, Errors.errFieldBlank, Me.ErrorProviderPurchaseTag, objMessageMode)
        blnValidated = False

        'value--validate'
    Else
        Errors.ValidateField(cboInput, Me.ErrorProviderPurchaseTag)
        blnValidated = True
    End If

    Return blnValidated

End Function

我想要的是能够将任何控件替换为实现“SelectedValue”对象行为的参数。有我可以指定的接口吗?谢谢您的帮助!

4

2 回答 2

0

ComboBox不实现接口,而是从抽象类ListControl继承。

于 2009-04-03T19:09:24.820 回答
0

我不相信有。我创建了每种不同类型的控件实现的自己的接口(通常是 I(Product)Field,它还包含其他帮助信息)。然后,在验证中,我只是对此进行了验证;它不是世界上最好的设计,但它就像一种魅力。

请注意,这还涉及对每种类型的控件(编辑框、组合框等)进行子类化,但是,我通常已经将它们子类化用于其他目的,所以我不认为这是一个问题。

于 2009-04-03T19:21:50.097 回答