2016-08-16 20 views
0

之前,我只想为我的坏英语道歉。我不知道该怎么说,我一直在搜索股票,我怎么能get the list of items as I input every single text。例如我想搜索名称Printer。当我输入第一个字母P时,所有以P开头的项目都会显示等等。有人可以请教我这个教程吗?或者可以帮助我做这个吗?显示项目列表,我输入每一个文本

随意编辑我的问题,请对我这样的初学者友好。使用winform

+0

我们需要更多的澄清。你使用的是什么UI? WinForms,WPF,ASP.Net,一个自定义库?通常任何文本框都会有某种您可以订阅/绑定到的更改事件/绑定。 –

+0

我正在使用winform –

回答

0

在的WinForms谢谢

IM,该TextBox控制具有KeyUp事件,你可以订阅。我假设你的表格上有一个名为txtSearchTextBox。使用设计器或在您的Load事件代码隐藏附加一个事件处理该事件:

private void Main_Load(object sender, EventArgs e) 
{ 
    txtSearch.KeyUp += txtSearch_KeyUp; 
} 

然后创建事件处理程序,并使用txtSearch的价值来获取数据/过滤器等

private void txtSearch_KeyUp(object sender, KeyEventArgs e) 
{ 
    var searchText = txtSearch.Text; 

    //TODO: Do something with the search string 
} 
+0

我的访问数据库中有哪些声明? –

+0

如果我使用组合框而不是文本框,会很容易吗? –

+0

您可以使用,取决于您想要做什么。 ComboBox将为您提供自动完成功能。你的问题太宽泛,无法在这里回答。你有什么尝试? –

0

步骤1)在窗体加载获取数据从数据库中的数据表dtAutocomplete填写

步骤2)请形式负载该方法

CompleteSource(dtAutocomplete, txtCity, "City");//(datatable , your textboxname , database feild name you want to bind like printername) 



    public void CompleteSource(DataTable dtsource, TextBox txtname, string fieldname) 
      { 
       AutoCompleteStringCollection autoitem = new AutoCompleteStringCollection(); 

      foreach (DataRow dr in dtsource.Rows) 
      { 
       autoitem.Add(dr[fieldname].ToString()); 
      } 

      txtname.AutoCompleteMode = AutoCompleteMode.Suggest; 
      txtname.AutoCompleteSource = AutoCompleteSource.CustomSource; 
      txtname.AutoCompleteCustomSource = autoitem; 
     } 
相关问题