In the original sample (using Click instead of PrepareViewStyleInfo), if you click on a non-gridlistcontrol cell, and then try to drop the gridlistcontrol in that row, the color is not correct for even the first drop.
I think what is happening here that the RowStyle setting are being applied after the CurrentCellShowingDropDown occurs, and this is why the RowStyle color is taking precedence over the one you set in the event. If you look closely, on occasion, I can actually see the red show before the blue paints over it.
So, it is not clear that this is something we will try to change right away if at all. Changing the order in which events are hit is a tricky thing to do, and will likely break existing code.
If you cannot use the main grid''s PrepareViewStyleInfo event to set the color of the selected row, then another solution would be to keep the click event, but also subscribe to the render.ListBoxPart.Grid.PrepareViewStyleInfo event setting the dropdown color there. This should take precedence over the rowstyle setting.
Dim cr As GridDropDownGridListControlCellRenderer = gridControl1.CellRenderers("GridListControl")
cr.ListControlPart.ShowColumnHeader = False
AddHandler cr.ListControlPart.Grid.PrepareViewStyleInfo, AddressOf gridControl1_PrepareViewStyleInfo
Private Sub gridControl1_PrepareViewStyleInfo(ByVal sender As Object, ByVal e As GridPrepareViewStyleInfoEventArgs)
e.Style.BackColor = Color.Red
End Sub