Back to Devexpress

ContextMenuShowingEvent Class

aspnetcore-js-devexpress-dot-richedit-20dca728.md

latest4.4 KB
Original Source

ContextMenuShowingEvent Class

An event that occurs before a context menu is displayed.

Declaration

ts
export class ContextMenuShowingEvent extends RichEditEvent<ContextMenuShowingEventArgs>

Remarks

You can define the ContextMenuShowing event handler either at the server side, at the client side, or at runtime.

Use the OnContextMenuShowing(String) method to specify the event handler.

cshtml
@(Html.DevExpress().RichEdit("richEdit")
 .OnContextMenuShowing("function(s,e) {
   var characterProperties = s.selection.activeSubDocument.getCharacterProperties(s.selection.intervals[0]);
   if (characterProperties.bold === true || characterProperties.bold === undefined) {
     e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Copy);
     e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Paste);
     e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Cut);
     e.contextMenu.insertItem(new DevExpress.RichEdit.ContextMenuItem('CutCopy', {
       icon: 'close', text: 'Copy Paste Disabled', disabled: true
     }), 1);
   }
 }")
 // ...

Use the contextMenuShowing property to specify the event handler.

javascript
const options = DevExpress.RichEdit.createOptions();
options.events.contextMenuShowing = function(s,e) {
  var characterProperties = s.selection.activeSubDocument.getCharacterProperties(s.selection.intervals[0]);
  if (characterProperties.bold === true || characterProperties.bold === undefined) {
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Copy);
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Paste);
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Cut);
    e.contextMenu.insertItem(new DevExpress.RichEdit.ContextMenuItem('CutCopy', {
      icon: 'close', text: 'Copy Paste Disabled', disabled: true
    }), 1);
  }
};

The contextMenuShowing property provides access to the addHandler(handler), removeHandler(handler), and clearHandlers methods that allow you to dynamically add and remove event handlers.

javascript
richEdit.events.contextMenuShowing.addHandler(function(s, e) {
  var characterProperties = s.selection.activeSubDocument.getCharacterProperties(s.selection.intervals[0]);
  if (characterProperties.bold === true || characterProperties.bold === undefined) {
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Copy);
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Paste);
    e.contextMenu.removeItem(DevExpress.RichEdit.ContextMenuCommandId.Cut);
    e.contextMenu.insertItem(new DevExpress.RichEdit.ContextMenuItem('CutCopy', {
      icon: 'close', text: 'Copy Paste Disabled', disabled: true
    }), 1);
  }
});

The event handler receives an argument of the ContextMenuShowingEventArgs type. The argument’s properties provide information specific to this event.

Inherited Members

addHandler(handler)

clearHandlers

isEmpty

removeHandler(handler)

Inheritance

Event<TSource, TEventArgs> RichEditEvent<TEventArgs> ContextMenuShowingEvent

See Also

Client-Side Events