Qual è un'interfaccia che specifica un controllo enumerabile di Windows?
-
23-08-2019 - |
Domanda
Ho un metodo che convalida un controllo casella combinata in questo modo:
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
Quello che voglio è essere in grado di sostituire qualsiasi controllo come un parametro che implementa il comportamento dell'oggetto "SelectedValue". C'è un'interfaccia che ho potuto specificare? Grazie per l'aiuto!
Soluzione
ComboBox non implementa un'interfaccia, ma invece eredita dalla classe astratta ListControl .
Altri suggerimenti
Non credo che ci sia. Ho creato la mia propria interfaccia (di solito mi (Product) Il campo che contiene anche altre informazioni di supporto), che ogni diverso tipo di strumenti di controllo. Poi, nella validazione ho appena gettato a quella; non è il miglior design del mondo, ma funziona come un fascino.
Si noti che questo comporta anche una sottoclasse ogni tipo di controllo (casella di modifica, casella combinata, ecc) ma, di solito sto già li sottoclasse per altri scopi in modo da non considero questo un problema.