Greetings,
I am currently using Infragistics controls version: 10.1.20101.2018
My question is this. I have a ultracombo control that when I type in it, should a matching row in the drop down be found, the matching combo row gets selected at the bottom of he drop down. See image below for current behavior:
What I would like o see is the selected row move to the top of the current drop down area rather than the bottom. See image below for desired behavior:
Is this possible? Is there some property setting on the ultracombo I need to set in order for this to occur?
Any help would be greatly appreciated.
Thanks,
Kris Rucker
Good one though, just what I needed.
Found the answer to this problem.
private
void baseCombo1_RowSelected(object sender, RowSelectedEventArgs e)
{
this.baseCombo1.DisplayLayout.RowScrollRegions[0].FirstRow = e.Row;
}
It apperas the RowScrollRegion has a 'FirstRow' property. Setting this to a row performs the desired behavior.
Just to clarify, it doesn't intentionally move the row to the bottom, it just scrolls it into view, and if it was below the last visible row, the scrolling logic would stop as soon as the row is fully within view, i.e., there would be no need to scroll up any further.
There is no property setting that changes this, although the control fires the RowSelected event when the row is selected, and you might be able to handle that event and set the UltraCombo.DisplayLayout.RowScrollRegions[0].ScrollPosition property therein to get what you want, but I haven't personally ever tried it and I can't say for sure that this will work as expected. One problem I anticipate would be that rows might appear to jump around a bit.