В случае события MouseDown объекта DataGridView используйте метод DataGridView.HitTest, чтобы не проверять, что было нажато. Затем вы можете переключать контекстные меню в зависимости от того, что нажали.

у установить другое контекстное меню для ячеек сетки данных, заголовков строк и заголовков столбцов. Идея состоит в том, что, когда я щелкаю правой кнопкой мыши по любому из этих элементов, появляется другое контекстное меню. Как мне это сделать?

Ответы на вопрос(2)

Ваш ответ на вопрос