LayoutControl.ShowContextMenu Event
OBSOLETE
You should use the 'PopupMenuShowing' instead
Occurs when the Context Menu is about to be displayed.
Namespace: DevExpress.XtraLayout
Assembly: DevExpress.XtraLayout.v24.1.dll
NuGet Package: DevExpress.Win.Navigation
Declaration
[Browsable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
[Obsolete("You should use the 'PopupMenuShowing' instead", false)]
public event LayoutMenuEventHandler ShowContextMenu
Event Data
The ShowContextMenu event's data class is LayoutMenuEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
Allow | Gets or sets whether the menu is allowed to be displayed. Inherited from PopupMenuShowingEventArgs. |
HitInfo | Contains information on the clicked point within the Layout Control. Inherited from PopupMenuShowingEventArgs. |
Menu | Gets or sets the menu that is about to be displayed. Inherited from PopupMenuShowingEventArgs. |
Point | Gets the point at which the menu is about to be displayed. Inherited from PopupMenuShowingEventArgs. |
Remarks
Use the LayoutControl.PopupMenuShowing event instead.
Example
The following example shows how to add custom menu items to the Context Menu via the LayoutControl.PopupMenuShowing event.
Two menu items are added: Save Layout which saves the current layout to a memory buffer; and Restore Layout which restores the previously saved layout. Clicking these items will call the LayoutControl.SetDefaultLayout and LayoutControl.RestoreDefaultLayout methods respectively.
The image below shows the resultant menu:
using DevExpress.XtraLayout;
using DevExpress.Utils.Menu;
private void layoutControl1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) {
e.Menu.Items.Add(new DXMenuItem("&Save Layout", new EventHandler(SaveLayout)));
e.Menu.Items.Add(new DXMenuItem("&Restore Layout", new EventHandler(RestoreLayout)));
}
private void SaveLayout(object sender, EventArgs e) {
layoutControl1.SetDefaultLayout();
}
private void RestoreLayout(object sender, EventArgs e) {
layoutControl1.RestoreDefaultLayout();
}