Как сделать всплывающее меню с правой кнопкой мыши на строке GridControl?

У меня есть GridControl с несколькими строками на моем интерфейсе DevExpress. Когда я щелкаю правой кнопкой мыши по некоторому ряду сетки, я хочу открыть меню такого же типа, как когда я щелкаю правой кнопкой мыши по своему рабочему столу (выигрыш 7), но только с 3 вариантами - Вырезать, Вставить и Копировать.

Как это сделать? Есть ли способ сказать в редакторе свойств GridControl "для каждой строки, если щелкнуть правой кнопкой мыши, то всплывающее меню". Если да, хранится ли это меню в хранилище и какой тип это меню?

2 ответа

Решение

Обработайте событие GridView ShowGridMenu, чтобы отобразить контекстное меню при щелчке gridRow. Мы также опубликовали пример, показывающий, как можно использовать это событие:

Как показать контекстное меню для строк сетки

  1. Добавьте элемент управления DevXpress.ExtraBars.BarManager.
  2. Добавьте элемент управления DevXpress.ExtraBars.PopupMenu.
  3. Создайте свою структуру меню внутри элемента управления PopupMenu.
  4. Добавьте этот код в событие PopupMenuShowing вашего GridView:

    private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e) 
    {
        if (e.HitInfo.InRow) 
        {
            System.Drawing.Point p2 = Control.MousePosition;
            this.popupMenu1.ShowPopup(p2);
        }
    }
    

Вот и все!

Другие вопросы по тегам