我有一个包含以下代码的组合框:
private void comboBox1_TextChanged(object sender, EventArgs e)
{
using (var service = WebServiceHelper.GetCoreService())
{
string physicianXml = service.SearchPhysicians(SessionInfo.Current.ClientCode, SessionInfo.Current.MachineName,
SessionInfo.Current.Username, comboBox1.Text);
var physicians = PhysicianItemList.FromXml(physicianXml);
AutoCompleteStringCollection autoCompleteStringCollection = new AutoCompleteStringCollection();
foreach (var physician in physicians.Items)
{
autoCompleteStringCollection.Add(physician.LastName + ", " + physician.FirstName);
}
comboBox1.AutoCompleteCustomSource = autoCompleteStringCollection;
comboBox1.Select(comboBox1.Text.Length, 0);
}
}
基本上,用户键入医生姓名的前几个字符,它应该使用前 100 条匹配记录填充自动完成列表。它工作得很好,但我需要将它关联回一个键(表中的 PK 或医师的 NPI 编号)。似乎AutoCompleteStringCollection
不支持键。任何人都可以建议这样做的方法吗?表中有大约 700 万条记录,因此我不想预先填充 ComboBox。
谢谢