In this document we are discussing about how to generate WPF menu dynamically in visual studio 2012.

Step 1: Create New Project.

web application

Step 2: Add Menu Control to The grid.

toolbox

Step 3: Include “System.Windows.Controls” in the project.

  • Create object for Menuitem.
  • Edit the properties of MenuItem.
  • Add Menu item to the Main Menu.

    1. MenuItem mnuInvoices = new MenuItem();
    2. mnuInvoices.Header = "Invoice";
    3. mnuInvoices.Height = 50;
    4. this.mnuMain.Items.Add(mnuInvoices);

Step 4: Create Sub Menu
  • Create object for Menuitem.
  • Edit the properties of MenuItem.
  • And add the submenu object to the corresponding MenuItem.

    1. MenuItem mnuInvoices = new MenuItem();
    2. mnuInvoices.Header = "Invoice";
    3. mnuInvoices.Height = 50;
    4. this.mnuMain.Items.Add(mnuInvoices);
    5. if (ObjUsr.UserTypeid == 1)
    6. {
    7. MenuItem mnuDeleteInvoice = new MenuItem();
    8. mnuDeleteInvoice.Header = "Delete Invoice";
    9. mnuDeleteInvoice.Height = 50;
    10. mnuInvoices.Items.Add(mnuDeleteInvoice);
    11. MenuItem mnuInvoiceStatus = new MenuItem();
    12. mnuInvoiceStatus.Header = "Invoice Status";
    13. mnuInvoiceStatus.Height = 50;
    14. mnuInvoices.Items.Add(mnuInvoiceStatus);
    15. }
    16. else
    17. {
    18. MenuItem mnuInvoiceStatus = new MenuItem();
    19. mnuInvoiceStatus.Header = "Invoice Status";
    20. mnuInvoiceStatus.Height = 50;
    21. mnuInvoices.Items.Add(mnuInvoiceStatus);
    22. }