I have a datagridview control, with SelectionMode=FullRowSelect. This control also allows any column heading to be clicked to sort any column. The MouseClick event fires on this control when a column heading is clicked, which results in my code acting like the last row that was clicked (where 'focus' was) is clicked again, in addition to the datagridview sorting. I want to distinguish between a MouseClick that happens within the grid, and a MouseClick that happens when a column heading is clicked. Can't figure it out. I did add a ColumnHeaderMouseClick event, which does fire in addition to the MouseClick event when a column heading is clicked, but it fires after the MouseClick event (if it would fire before, then I'd have a workaround here). Any suggestions on how to determine if a MouseClick was on a column heading, or how to get the ColumnHeaderMouseClick to fire first? Any help is greatly appreciated. Thanks.