我使用Framework 3.5在VB.Net上工作,我需要一个特定的组合自动完成功能,这样我就可以使用BindingSource来使用它的“Filter”属性
Dim m_bsCommune As New BindingSource
m_bsCommune.DataSource = m_dtCommune
cboCommune.DataSource = m_bsCommune
然后,我实现了组合的事件“TextUpdate”:
Private Sub cboCommune_TextUpdate(ByVal sender As Object, ByVal e As System.EventArgs) Handles cboCommune.TextUpdate
Dim cboValue As String = cboCommune.Text
m_bsCommune.Filter = String.Format("CODE_COM Like '%{0}%'", cboCommune.Text)
cboCommune.Text = cboValue
cboCommune.Select(cboCommune.Text.Length, 0)
cboCommune.DroppedDown = True
End Sub
过滤器工作正常,但在我使用磁带组合中不存在的值的情况下,当我尝试移动到另一个控件时,或者我在组合外单击时出现错误:
“无效参数值0对索引”
无效
我尝试在事件“LostFocus,GotFocus”上管理此错误,但错误是为这两个事件生成的!
感谢您的帮助