最近在做的一个小task,网页端下拉框中绑定数据库的字段信息,需要实现下拉框可编辑,并且实现模糊查询的功能。
首先考虑了combobox,combobox虽然是下拉框和文本框的组合框,也包含了自动匹配的属性 AutoCompleteMode,但是我想要的是含有过滤功能的模糊查询, AutoCompleteMode属性貌似做不到过滤。所以自己写了控件,下拉框与文本框的组合,利用ajaxToolkit的控件AutoCompleteExtender,对文本框输入可实现含过滤功能的模糊查询,这里先不介绍AutoCompleteExtender的使用,主要介绍自己写的可编辑的下拉框的实现。
主要思路:在asp端,利用CSS的style属性调整位置和宽度,使得文本框悬浮在下拉框上,看起来就像一个控件,实则是两个控件。在C#端编写下拉框DDL_filter_type_SelectedIndexChanged事件,和文本框 myTextBox_TextChanged的事件,使得两个控件能够关联,同时指向数据库的同一条记录,下面是代码:
asp端:
<asp:DropDownList ID="DDL_filter_type" runat="server" Style="width:375px;" AutoPostBack="True"
OnSelectedIndexChanged="DDL_filter_type_SelectedIndexChanged" AppendDataBoundItems="true"