大家帮帮忙,事成后重分感谢!
在数据库开发中,有时候需要通过用户ID对用户查找,不过由于ID不好用,人们一般采取要求用户输入用户名,但用程序转化为ID。我想采取这样一种策略:在下拉列表框中,输入人名简写比如名称中各个字的开头字母,然后下拉框中显示出对应此简称的用户的相应信息,在用户选择后,把被选择用户的ID返回。
我创建了一张person表,用于存储用户信息,其中与此问题相关的有3个字段:用户名,用户ID,用户名简拼。当然,一个简拼有可能对应多个用户,所以我这么设计:让用户输入用户名简拼,然后出来一个窗口,里面显示对应此用户简拼的所有用户信息,然后让使用者选择,在使用者选择后,把被选用户的ID记录下来!
我有两个实现方案,不过都存在问题,希望大家能给些建议!
方案 1:改进下拉列表框,使其能够显示多列!
不过,需要重写那些列表框事件,如何改写,还不是很清楚。
方案 2:采用复合控件(此控件包括一个edit控件,一个grid控件)
具体如下:
1)在edit控件,当使用者输入完,按回车时,显示grid控件,在用户选择结束时,此grid控件隐藏。
2)grid控件的显示位置要挨着edit控件。最好在其下方,看起来像一个下拉列表框。
3)grid控件可以显示用户各种相关信息,以方便选择。并且,显示内容与上面edit控件的内容相关。
对于具体的实施方法,也不太清楚。
我采用vb.net开发b/s应用程序,大家觉得上面两种方案那种更实用,能不能对具体的实施作一些指导(或给出一些实现代码)?