什么是指定可枚举 Windows 控件的接口?
Posted
技术标签:
【中文标题】什么是指定可枚举 Windows 控件的接口?【英文标题】:What is an interface that specifies an enumerable Windows control? 【发布时间】:2010-10-17 10:39:29 【问题描述】:我有一个方法可以像这样验证组合框控件:
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”对象行为的参数。有我可以指定的接口吗?感谢您的帮助!
【问题讨论】:
【参考方案1】:ComboBox 没有实现接口,而是继承自抽象类ListControl。
【讨论】:
【参考方案2】:我不相信有。我创建了我自己的接口(通常是 I(Product)Field,它还包含其他帮助信息),每种不同类型的控件都实现了这些接口。然后,在验证中,我只是对此进行了验证;这不是世界上最好的设计,但它就像一个魅力。
请注意,这还涉及对每种类型的控件(编辑框、组合框等)进行子类化,但是,我通常已经将它们子类化以用于其他目的,因此我认为这不是问题。
【讨论】:
以上是关于什么是指定可枚举 Windows 控件的接口?的主要内容,如果未能解决你的问题,请参考以下文章