这里我已经做了一个函数,从哪个表中完成自动完成的表名,需要自动完成的字段的名称以及需要作为目标的组合框。
试试下面的代码:
public void AutoCompleteTextBox(string tableName, string fieldName, ComboBox combToAutoComp)
{
AutoCompleteStringCollection txtCollection = new AutoCompleteStringCollection();
DataTable dtAutoComp = Dal.ExecuteDataSetBySelect("Stored_Procedure", fieldName, tableName);
if (dtAutoComp.Rows.Count >= 0)
{
for (int count = 0; count < dtAutoComp.Rows.Count; count++)
{
txtCollection.Add(dtAutoComp.Rows[count][fieldName].ToString());
}
}
combToAutoComp.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
combToAutoComp.AutoCompleteSource = AutoCompleteSource.CustomSource;
combToAutoComp.AutoCompleteCustomSource = txtCollection;
}
这里Dal.ExecuteDataSetBySelect
是我实现,其中我创建连接,命令和DataAdapter来调用存储过程。你可以用你自己的实现替换它。欲了解更多请参考this link
thx好友,工作充分。虽然我决定经过更多的努力,采取WPF陡峭的学习曲线,并从头开始使用WPF的项目 - 祝我好运:) – Sargola 2010-04-07 21:34:32
所有最好:) – HotTester 2010-04-08 07:35:25