C # - DatagridView и ContextMenu

У меня есть datagridview, где я показываю информацию о продуктах. Я хочу привязать контекстное меню, когда пользователь выбирает ячейку, а затем щелкает правой кнопкой мыши по этой ячейке. У меня есть другое контекстное меню, и оно привязано к столбцам datagridview. Если пользователь щелкает правой кнопкой мыши столбец, отображается контекстное меню.

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

   private void GridView1_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
    {
        if (e.Button == MouseButtons.Right)
        {
            productContextMenu.Show(GridView1, e.Location);
        }

    }

Как мне сделать так, чтобы при щелчке правой кнопкой мыши по таблице данных отображалось?

Большое спасибо заранее.

РЕДАКТИРОВАТЬ

Спасибо за ответы. Решил проблему так:

    private void GridView1_MouseUp(object sender, MouseEventArgs e)
    {
        DataGridView.HitTestInfo hitTestInfo;
        if (e.Button == MouseButtons.Right)
        {
            hitTestInfo = GridView1.HitTest(e.X, e.Y);
            if (hitTestInfo.Type == DataGridViewHitTestType.Cell)
            {
                productContextMenu.Show(GridView1, e.Location);
            }

        }
    }

Оба контекстных меню показывают. Когда я нажимаю на столбец, который отображается в контекстном меню, и когда я нажимаю на ячейку, отображается контекстное меню.

9
задан David Hall 4 May 2011 в 15:15
поделиться