O que é uma interface que especifica um controle enumeráveis ??do Windows?
-
23-08-2019 - |
Pergunta
Eu tenho um método que valida um controle de caixa de combinação assim:
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
O que eu quero é ser capaz de substituir qualquer controle como um parâmetro que implementa o comportamento do objeto "SelectedValue". Existe uma interface que eu poderia especificar? Obrigado pela ajuda!
Solução
ComboBox não implementa uma interface, mas em vez herda da classe abstrata ListControl .
Outras dicas
Eu não acredito que existe. Eu criei minha própria interface (geralmente I (Product) Campo que também contém outras informações helper) que cada tipo diferente de implementos de controle. Então, na validação Eu só lançou a isso; não é o melhor design do mundo, mas ele funciona como um encanto.
Note que isto também envolve subclassificação cada tipo de controle (caixa de edição, caixa de combinação, etc), mas, normalmente estou já subclasse-los para outros fins, então eu não considero isso é um problema.