windowsforms-devexpress-dot-xtragrid-dot-views-dot-grid-54a596da.md
Contains data for the GridView.PopupMenuShowing event.
Namespace : DevExpress.XtraGrid.Views.Grid
Assembly : DevExpress.XtraGrid.v25.2.dll
NuGet Packages : DevExpress.Win.Grid, DevExpress.Win.Navigation
public class PopupMenuShowingEventArgs :
BasePopupMenuShowingEventArgs
Public Class PopupMenuShowingEventArgs
Inherits BasePopupMenuShowingEventArgs
PopupMenuShowingEventArgs is the data class for the following events:
The following code sample invokes a custom context menu when a user right-clicks a column header:
Add a BarManager to the form and create a custom PopupMenu.
Handle the GridView.PopupMenuShowing event and call the e.ShowCustomMenu method to display your custom menu instead of the default header menu.
void gridView1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) {
if (e.MenuType == GridMenuType.Column) {
popupMenu_Column.Tag = e.HitInfo;
popupMenu_Column.MenuCaption = $"{e.HitInfo.Column}";
e.ShowCustomMenu(popupMenu_Column);
}
}
GridHitInfo GetHitInfo(BarItemLink link) {
PopupMenu menu = link.LinkedObject as PopupMenu;
return menu.Tag as GridHitInfo;
}
void barButtonItem_Filter_ItemClick(object sender, ItemClickEventArgs e) {
GridHitInfo info = GetHitInfo(e.Link);
info.View.ShowFilterEditor(info.Column);
}
void barButtonItem_ColumnChooser_ItemClick(object sender, ItemClickEventArgs e) {
GridHitInfo info = GetHitInfo(e.Link);
info.View.ShowCustomization();
}
Private Sub gridView1_PopupMenuShowing(ByVal sender As Object, ByVal e As PopupMenuShowingEventArgs)
If e.MenuType = GridMenuType.Column Then
popupMenu_Column.Tag = e.HitInfo
popupMenu_Column.MenuCaption = $"{e.HitInfo.Column}"
e.ShowCustomMenu(popupMenu_Column)
End If
End Sub
Private Function GetHitInfo(ByVal link As BarItemLink) As GridHitInfo
Dim menu As PopupMenu = TryCast(link.LinkedObject, PopupMenu)
Return TryCast(menu.Tag, GridHitInfo)
End Function
Private Sub barButtonItem_Filter_ItemClick(ByVal sender As Object, ByVal e As ItemClickEventArgs)
Dim info As GridHitInfo = GetHitInfo(e.Link)
info.View.ShowFilterEditor(info.Column)
End Sub
Private Sub barButtonItem_ColumnChooser_ItemClick(ByVal sender As Object, ByVal e As ItemClickEventArgs)
Dim info As GridHitInfo = GetHitInfo(e.Link)
info.View.ShowCustomization()
End Sub
Object EventArgs BasePopupMenuShowingEventArgs PopupMenuShowingEventArgs GridMenuEventArgs
See Also