Dynamically added Easy Menu persists on PostBack. We need to use Page_Load and Page_Init events.
In the Page_Init method we will create the Easy Menu, set the id and add it to the page's control
list. On Page_Load event, if there is no PostBack (!Page.IsPostBack), we will populate the Easy Menu
with items and properties. After a postback, Easy Menu is loaded automatically from ViewState.
In page class:
protected EasyMenu em_1;
Here is the code for Page_Load:
void Page_Load(object sender, EventArgs e)
em_1.AttachTo = "item1";
em_1.AddItem(new MenuItem("menuItem1", "SubItem 1", "", "", "",
"alert('Item 1 - SubItem 1')"));
em_1.AddItem(new MenuItem("menuItem2", "SubItem 2", "", "", "",
"alert('Item 1 - SubItem 2')"));
And the code for Page_Init:
void Page_Init(object sender, EventArgs e)
em_1 = new EasyMenu();
em_1.ID = "Easymenu1";
Now we need to add a control that posts back the page. For example, a button:
You will notice that even after pressing the button (posting back the page to the server), the Easy Menu
will still be populated with its items and properties.