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

あるとは思いません。さまざまな種類のコントロールが実装する独自のインターフェイス (通常は、他のヘルパー情報も含む I(Product)Field) を作成しました。次に、検証でそれにキャストしました。それは世界で最高のデザインではありませんが、魅力のように機能します.

これには、各タイプのコントロール (エディット ボックス、コンボ ボックスなど) のサブクラス化も含まれますが、通常は他の目的で既にサブクラス化しているので、これは問題ではないと考えています。

于 2009-04-03T19:21:50.097 に答える