[英]VB.net linking two autocomplete textbox
我有两个自动完成文本框。 一个用于客户名称,另一个用于客户代码。 我已经使用以下代码为客户和客户代码文本框设置了自动完成功能:
客户自动完成
Dim ds As DataSet = obtainCustomerData()
Dim i As Integer
For i = 0 To ds.Tables(0).Rows.Count - 1
CustName.Add(ds.Tables(0).Rows(i)("name").ToString().ToUpper)
Next
CustomerNameTB.AutoCompleteSource = AutoCompleteSource.CustomSource
CustomerNameTB.AutoCompleteCustomSource = CustName
CustomerNameTB.AutoCompleteMode = AutoCompleteMode.Suggest
客户代码自动完成
Dim ds As DataSet = obtainCustomerCodeData()
Dim i As Integer
For i = 0 To ds.Tables(0).Rows.Count - 1
CustCode.Add(ds.Tables(0).Rows(i)("code").ToString().ToUpper)
Next
CodeTB.AutoCompleteSource = AutoCompleteSource.CustomSource
CodeTB.AutoCompleteCustomSource = CustCode
CodeTB.AutoCompleteMode = AutoCompleteMode.Suggest
现在我希望最终用户开始在任一文本框中输入,但是如果他们根据名称选择客户,我希望它通过另一个文本框中的代码,如果他们开始输入代码,我希望它自动填充名称.
我该怎么办?
如果您使用ComboBox
而不是TextBox
它只是一些简单的设置:
Code
,另一个用于Name
。DataSource
设置为相同的列表。DisplayMember
设置为Code
属性,将另一个设置为Name
属性。AutoCompleteSource
设置为ListItems
。AutoCompleteMode
设置为Suggest
。 这样,每个ComboBox
都将充当列表的索引,当您从其中一个中选择一个项目时,另一个将选择相同的项目。 一个显示Code
,另一个显示Name
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.