Hi,
I have a UltraComboEditor that is populated and used as a dropdown list. The SelectionChanged event fires after the list is dropped down and an item is selected by clicking the mouse. The SelectionChanged will continue to fires if the up/down arrow keys on the keyboard is used.
Is there a way to prevent the SelectionChanged event from firing when the up/down arrow keys are used?
I would like the user to be able to either scroll through the list using the mouse and clicking on their choice. Alternatively, is it possible for the using to scroll through the list using the up/down arrow keys without firing the SelectionChanged event and when the enter key is pressed to fire the SelectionChanged event.
I don't see any easy way around this.
Perhaps you could experiment with trapping the KeyUp and KeyDown events. You could set a flag in KeyDown and then ignore the event and then clear that flag in KeyUp. Or to make it even easier, you could disable the event (using the EventManager) or unhook the event in KeyDown and re-enable it in KeyUp.
Another option might be to separate the selection of an item on the list from the addition of that item to your external list. So you could add a button next to the Combo, or use the ButtonsRight collection of the control and the user has to click the button to add the currently-selected item to the list.
Hi Mike,
Thanks for your quick reply.
Looks like I am going to have to find a work around for this. I use the drop down list for the user to select items to include in a grid. Scrolling with the mouse and clicking the desired items does the trick but some users are scrolling through the list using the arrow keys. This leads to every item in the list that is passed over with the up.down arrow to be added to the grid.
Any thoughts or suggestions?
No, I don't think this is possible. Currently, the control is hard-wired to respond to the up/down arrow by selecting the next/previous item in the list, just like the inbox ComboBox control.
You can Submit a feature request to Infragistics.