열거 가능한 Windows 컨트롤을 지정하는 인터페이스는 무엇입니까?
-
23-08-2019 - |
문제
콤보 박스 컨트롤을 확인하는 방법이 있습니다.
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"객체의 동작을 구현하는 매개 변수로 컨트롤을 대체 할 수 있어야합니다. 지정할 수있는 인터페이스가 있습니까? 도와 주셔서 감사합니다!
해결책
콤보 박스 인터페이스를 구현하지 않고 대신 추상 클래스에서 상속됩니다. ListControl.
다른 팁
나는 믿지 않는다. 나는 각기 다른 유형의 제어가 구현되는 내 자신의 인터페이스 (보통 I (제품) 필드)을 만들었습니다. 그런 다음 검증에서 방금 캐스팅되었습니다. 그것은 세계 최고의 디자인은 아니지만 매력처럼 작동합니다.
여기에는 각 유형의 컨트롤 (편집 상자, 콤보 상자 등)을 서브 클래싱하는 것도 포함되지만, 일반적으로 다른 목적으로 이미 하위 클래스를하고 있으므로 이것이 문제라고 생각하지 않습니다.
제휴하지 않습니다 StackOverflow