[Expand]General Information
[Collapse]WinForms Controls
  .NET Core Support
 [Expand]What's Installed
 [Expand]Build an Application
 [Collapse]Controls and Libraries
  [Expand]Forms and User Controls
  [Expand]Messages, Notifications, and Dialogs
  [Expand]Editors and Simple Controls
  [Expand]Ribbon, Bars and Menu
  [Expand]Application UI Manager
  [Expand]Docking Library
  [Expand]Data Grid
  [Expand]Vertical Grid
  [Expand]Property Grid
  [Expand]Pivot Grid
  [Expand]Tree List
  [Expand]Gantt Control
  [Expand]Chart Control
  [Expand]Map Control
   [Expand]Product Information
    Product Structure
    Getting Started
   [Expand]Spreadsheet Document
    Supported Formats
   [Expand]Cell Basics
    Defined Names
    Data Binding
    Data Validation
   [Expand]Data Presentation
    Data Grouping
   [Expand]Pivot Tables
   [Expand]Charts and Graphics
   [Expand]Mail Merge
    Operation Restrictions
    Find and Replace
   [Expand]Visual Elements
   [Expand]Keyboard Shortcuts
    [Expand]Rows and Columns
    [Expand]Import and Export Data
    [Expand]Data Binding
    [Expand]Mail Merge
    [Expand]Formatting Cells
    [Expand]Conditional Formatting
    [Expand]Group Data
    [Expand]Filter Data
    [Expand]Pivot Tables
      How to: Customize or Hide the Popup Menu
      How to: Save and Restore Custom Cell Editors
  [Expand]Rich Text Editor
  [Expand]Spell Checker
  [Expand]Form Layout Managers
  [Expand]Navigation Controls
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Sunburst Control
 [Expand]Common Features
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

How to: Customize or Hide the Popup Menu

This example demonstrates how to customize the SpreadsheetControl's context menu. In particular, this sample demonstrates how to remove or disable the existing items of the context menu and add new menu items.

Handle the SpreadsheetControl.PopupMenuShowing event to change specific items of the SpreadsheetControl's popup menu every time it is invoked. The current menu can be accessed via the Menu property of the event parameter.

All context menu types are listed in the SpreadsheetMenuType enumeration. The following code modifies the SpreadsheetMenuType.Cell menu, which can be invoked by right-clicking any cell on a worksheet.


The CommandPopupMenu<T>.EnableMenuItem method does not enable the context menu item if you set the corresponding command's ICommandUIState.Enabled property to false.

The image below illustrates the result. The image on the left shows the context menu before customization, and the image on the right shows the custom popup menu.

Expanded Disable or Hide the Popup Menu

If you wish to prevent end-users from invoking the context menu, you can disable or hide it using the SpreadsheetBehaviorOptions.ShowPopupMenu property of the SpreadsheetBehaviorOptions object, which can be accessed from the SpreadsheetControlOptions.Behavior property. The SpreadsheetBehaviorOptions.ShowPopupMenu property uses the DocumentCapability enumeration values to specify the availability of certain functionality in the SpreadsheetControl. Select the DocumentCapability.Disabled or DocumentCapability.Hidden value to make the context menu unavailable to end-users.

Is this topic helpful?​​​​​​​