Проблема при отображении ContextMenuStrip в элементе управления XtraGridview

У меня есть один ContextMenustrip & DevExpress XtraGridView. И я показал ContextMenustrip пользователю, когда пользователь щелкает правой кнопкой мыши XtraGridView, для этого я использовал событие XtraGridView's MouseDown(). Проблема этого приложения в том, что когда мое представление сетки содержит минимальное количество строк, оно показывает некоторое пустое пространство в конце представления сетки. И я не хочу показывать ContextMenustrip в этом пустом пространстве XtraGridView, когда пользователь щелкает правой кнопкой мыши по сетке. Я просто хочу показать ContextMenustrip только в выбранной позиции строки. Можно ли избежать этой проблемы?

Благодарность..


person Priyanka    schedule 06.05.2011    source источник


Ответы (1)


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

private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e) {
            if(e.HitInfo.HitTest ==  GridHitTest.RowCell)    {
                e.Allow == false;
                // your code to show menu
            }
        }
person DevExpress Team    schedule 06.05.2011