Auto Complete/Suggest (On Steroids)

S

Smithers

I am looking to implement a search feature into a Windows Forms MDI
application. Specifically I plan to embed 3 textboxes into a toolbar; one
for LastName, another for FirstName, and one for CustomerID. When the user
starts typing into any of these textboxes I would like to pop up another
form that shows the user a dynamic list of the closest matches. The user can
then use the up- and down-arrow keys to select a customer from that pop up
form.

To see an example of similar ("close-but-not-quite") functionality, go to
http://www.thebusco.com/ and in the upper left-hand corner there is a
textbox with 'Enter Part Search Here'. Start typing 'air vent cover' to see
the behaviour in question. Yes, it's a Web application and I'm doing a
Windows Forms app, but it shows you the general idea of what I'm trying to
accomplish with Windows Forms.

Please note that I am familiar with the new 2.0 features: AutoCompleteMode,
AutoCompleteSource, and AutoCompleteCustomSource.

But those won't work for my situation because I'm *not* looking to simply
populate a textbox or a combo box from the list.

What I am needing to do is let the user select the customer for which info
is to appear in the currently active MDI form (and not only the control into
which they are typing). The idea is that the user starts typing into any one
of the 3 textboxes; as they type - the pop up window appears and shows the
closest matches. The user then hits the down arrow key a few times to select
the desired match, then hits Enter to (1) close the popup window, and (2)
trigger logic that shows the selected customer's info in the currently
active MDI form.

Note that I want to pop up another window [for the closest matches] so that
I can show the user many property values for the possible matches (and not
simply show them a list of names similar to the one they are searching, for
example).

What do you see as the biggest challenges in accomplishing this dynamic
search capability (and reasonable solutions)? What are the building blocks
you might suggest for the solution?

Thanks for your time and consideration!
 
F

Frank Rizzo

If I might suggest an ugly solution...feel free to flame.

Why not populate a combobox dropdown with all your lookup data.
Then upon focus event, drop down the combobox and let the user type
whatever. The combobox will go to the matching item.

Regards.
 
S

Smithers

Come on Frank. I'm not into flaming and I won't do it now... though tempted
:)



Frank Rizzo said:
If I might suggest an ugly solution...feel free to flame.

Why not populate a combobox dropdown with all your lookup data.
Then upon focus event, drop down the combobox and let the user type
whatever. The combobox will go to the matching item.

Regards.
I am looking to implement a search feature into a Windows Forms MDI
application. Specifically I plan to embed 3 textboxes into a toolbar; one
for LastName, another for FirstName, and one for CustomerID. When the
user starts typing into any of these textboxes I would like to pop up
another form that shows the user a dynamic list of the closest matches.
The user can then use the up- and down-arrow keys to select a customer
from that pop up form.

To see an example of similar ("close-but-not-quite") functionality, go to
http://www.thebusco.com/ and in the upper left-hand corner there is a
textbox with 'Enter Part Search Here'. Start typing 'air vent cover' to
see the behaviour in question. Yes, it's a Web application and I'm doing
a Windows Forms app, but it shows you the general idea of what I'm trying
to accomplish with Windows Forms.

Please note that I am familiar with the new 2.0 features:
AutoCompleteMode, AutoCompleteSource, and AutoCompleteCustomSource.

But those won't work for my situation because I'm *not* looking to simply
populate a textbox or a combo box from the list.

What I am needing to do is let the user select the customer for which
info is to appear in the currently active MDI form (and not only the
control into which they are typing). The idea is that the user starts
typing into any one of the 3 textboxes; as they type - the pop up window
appears and shows the closest matches. The user then hits the down arrow
key a few times to select the desired match, then hits Enter to (1) close
the popup window, and (2) trigger logic that shows the selected
customer's info in the currently active MDI form.

Note that I want to pop up another window [for the closest matches] so
that I can show the user many property values for the possible matches
(and not simply show them a list of names similar to the one they are
searching, for example).

What do you see as the biggest challenges in accomplishing this dynamic
search capability (and reasonable solutions)? What are the building
blocks you might suggest for the solution?

Thanks for your time and consideration!
 
P

Patrice

Looks a bit vague.

IMO your best bet would be to give this a try (should be quite easy) and ask
for specific questions for possible enhancements if needed (essentially
depending on the response time you have given the amount of data you search
in)...
 
F

Frank Rizzo

Smithers said:
Come on Frank. I'm not into flaming and I won't do it now... though tempted
:)

I hear you, you don't want a half-baked solution. If that's the case
there is no substitute for coding it up the hard way. Put a small
listbox beneath the textbox and repopulate as needed based on the user
input.

If I am not mistaken you want autocomplete as coded by Google here:
http://www.google.com/webhp?complete=1&hl=en

Frank Rizzo said:
If I might suggest an ugly solution...feel free to flame.

Why not populate a combobox dropdown with all your lookup data.
Then upon focus event, drop down the combobox and let the user type
whatever. The combobox will go to the matching item.

Regards.
I am looking to implement a search feature into a Windows Forms MDI
application. Specifically I plan to embed 3 textboxes into a toolbar; one
for LastName, another for FirstName, and one for CustomerID. When the
user starts typing into any of these textboxes I would like to pop up
another form that shows the user a dynamic list of the closest matches.
The user can then use the up- and down-arrow keys to select a customer
from that pop up form.

To see an example of similar ("close-but-not-quite") functionality, go to
http://www.thebusco.com/ and in the upper left-hand corner there is a
textbox with 'Enter Part Search Here'. Start typing 'air vent cover' to
see the behaviour in question. Yes, it's a Web application and I'm doing
a Windows Forms app, but it shows you the general idea of what I'm trying
to accomplish with Windows Forms.

Please note that I am familiar with the new 2.0 features:
AutoCompleteMode, AutoCompleteSource, and AutoCompleteCustomSource.

But those won't work for my situation because I'm *not* looking to simply
populate a textbox or a combo box from the list.

What I am needing to do is let the user select the customer for which
info is to appear in the currently active MDI form (and not only the
control into which they are typing). The idea is that the user starts
typing into any one of the 3 textboxes; as they type - the pop up window
appears and shows the closest matches. The user then hits the down arrow
key a few times to select the desired match, then hits Enter to (1) close
the popup window, and (2) trigger logic that shows the selected
customer's info in the currently active MDI form.

Note that I want to pop up another window [for the closest matches] so
that I can show the user many property values for the possible matches
(and not simply show them a list of names similar to the one they are
searching, for example).

What do you see as the biggest challenges in accomplishing this dynamic
search capability (and reasonable solutions)? What are the building
blocks you might suggest for the solution?

Thanks for your time and consideration!
 
S

Smithers

<< If that's the case there is no substitute for coding it up the hard
way.>>

Right! I'm happy to do that. Like Patrice said perhaps my question is too
vague as is. Guess I was hoping someone would have done something similar
and would be in a position to tell me the building blocks that worked for
them. I could come up with my own and it looks like I'll be doing that. But
before reinventing the wheel...

-S





Frank Rizzo said:
Smithers said:
Come on Frank. I'm not into flaming and I won't do it now... though
tempted :)

I hear you, you don't want a half-baked solution. If that's the case
there is no substitute for coding it up the hard way. Put a small listbox
beneath the textbox and repopulate as needed based on the user input.

If I am not mistaken you want autocomplete as coded by Google here:
http://www.google.com/webhp?complete=1&hl=en

Frank Rizzo said:
If I might suggest an ugly solution...feel free to flame.

Why not populate a combobox dropdown with all your lookup data.
Then upon focus event, drop down the combobox and let the user type
whatever. The combobox will go to the matching item.

Regards.

Smithers wrote:
I am looking to implement a search feature into a Windows Forms MDI
application. Specifically I plan to embed 3 textboxes into a toolbar;
one for LastName, another for FirstName, and one for CustomerID. When
the user starts typing into any of these textboxes I would like to pop
up another form that shows the user a dynamic list of the closest
matches. The user can then use the up- and down-arrow keys to select a
customer from that pop up form.

To see an example of similar ("close-but-not-quite") functionality, go
to http://www.thebusco.com/ and in the upper left-hand corner there is
a textbox with 'Enter Part Search Here'. Start typing 'air vent cover'
to see the behaviour in question. Yes, it's a Web application and I'm
doing a Windows Forms app, but it shows you the general idea of what
I'm trying to accomplish with Windows Forms.

Please note that I am familiar with the new 2.0 features:
AutoCompleteMode, AutoCompleteSource, and AutoCompleteCustomSource.

But those won't work for my situation because I'm *not* looking to
simply populate a textbox or a combo box from the list.

What I am needing to do is let the user select the customer for which
info is to appear in the currently active MDI form (and not only the
control into which they are typing). The idea is that the user starts
typing into any one of the 3 textboxes; as they type - the pop up
window appears and shows the closest matches. The user then hits the
down arrow key a few times to select the desired match, then hits Enter
to (1) close the popup window, and (2) trigger logic that shows the
selected customer's info in the currently active MDI form.

Note that I want to pop up another window [for the closest matches] so
that I can show the user many property values for the possible matches
(and not simply show them a list of names similar to the one they are
searching, for example).

What do you see as the biggest challenges in accomplishing this dynamic
search capability (and reasonable solutions)? What are the building
blocks you might suggest for the solution?

Thanks for your time and consideration!
 
M

Michael.Suarez

I am actually interested in creating something just like what you have
described.
Have you come up with a solution for this?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top