ASPxScheduler.PreparePopupMenu Event
OBSOLETE
You should use the 'PopupMenuShowing' instead
Occurs before a context menu is created for a scheduler.
Namespace: DevExpress.Web.ASPxScheduler
Assembly: DevExpress.Web.ASPxScheduler.v19.2.dll
Declaration
[Obsolete("You should use the 'PopupMenuShowing' instead", false)]
public event PreparePopupMenuEventHandler PreparePopupMenu
Event Data
The PreparePopupMenu event's data class is PreparePopupMenuEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
Menu | Gets or sets the popup menu for which this event was raised. Inherited from PopupMenuShowingEventArgs. |
Remarks
Handle the PreparePopupMenu event to modify items in the context menu. The current context menu can be accessed via the PopupMenuShowingEventArgs.Menu property.
Tip
A complete sample project is available in the DevExpress Code Examples database at http://www.devexpress.com/example=E291.
Example
The following example illustrates how to handle the PreparePopupMenu event for customizing a context menu.
protected void ASPxScheduler1_PreparePopupMenu(object sender,
PreparePopupMenuEventArgs e)
{
ASPxSchedulerPopupMenu menu = e.Menu;
DevExpress.Web.MenuItemCollection menuItems = menu.Items;
// Check whether this menu is invoked by clicking empty time cells
if (menu.Id == SchedulerMenuItemId.DefaultMenu)
{
// Remove the "New Appointment" item
DevExpress.Web.MenuItem item = menuItems.FindByName("NewAppointment");
if(item != null) menuItems.Remove(item);
// Create a group and add two submenus
DevExpress.Web.MenuItem newItem =
new DevExpress.Web.MenuItem("CreateNewEvent", "TemplateEvents");
newItem.BeginGroup = true;
menuItems.Insert(0, newItem);
newItem.Items.Add(new DevExpress.Web.MenuItem("Check engine oil",
"CheckEngineOilId"));
newItem.Items.Add(new DevExpress.Web.MenuItem("Wash the car",
"WashCarId"));
}
}