I have a form with a lot of controls on it (enough that there is a scroll bar on the Panel). There is an UltraGrid that only fits half way on to the viewable area of the screen. When I click a row on the grid the the panel automatically scrolls so that the entire UltraGroupBox that contains the UltraGrid becomes visible on the screen. This is normal since it seem to happen when ever any control gains focus.
The problem is when the page jumps before the click is processed all the way. So if only the top row is visible and I click on it then after than jump the last row in the grid has been selected.
Is there a way to prevent this from happening?
You can get hoftfixes at the My Keys and Downloads section. However, I just looked up the original fix for this issue and it was only addressed in 6.2 and later. Currently I believe that only versions 7.2 and above are supported, so there will be no more hotfixes past what is already available for 6.2. I would suggest downloading a trial for a later version to see if your issue was addressed.
-Matt
Thanks for the quick reply.
The version on the assembly is 6.1.20061.28.
Where do I look for hot fixes?
What version are you using, and do you have the latest hotfix? I'm pretty sure that there has been a fix implemented that will prevent the grid from shifting when it is within a ScrollableControl, though I think that the code in the current hotfixes will not address the issue if there are multiple nested ScrollableControls with AutoScroll enabled. Aside from this, the only thing that I can think of is to handle the MouseDown on the grid to see what was clicked and either process it then or store what was clicked for later processing, since it is the Focus call (as you mentioned) that is triggering this within the panel.