>>I have also observed that whenever I select any value from ComboBox, all expanded records collapse :(.
This suggests to me that the combobox and main grid may be bound to the same datasource in the same BindingContext, as the grid is responding to the ListChanged events from the combobox.
Here is a sample that has a databound combobox in the root level of a hierarchical GridDataBoundGrid, and it does not display this behavior for me. What are you doing differently?
HierarchicalCombos_4651.zip
As far as preserving the expand state through a sort, then you will handle to handle this yourself. (If you use the GridGroiupingCOntrol, this is handled for you.) Here is a forum thread that has a sample of how you can do this with a GridDataBoundGrid. http://www.syncfusion.com/Support/Forums/message.aspx?MessageID=5172