# MenuItem

The Wisej.NET `MenuItem` must be added to a `MainMenu`, `MenuBar`, or `ContextMenu` for display. Create submenus by adding `MenuItem` objects to a parent `MenuItem`'s `MenuItems` property.

Configure appearance and functionality through properties:

* `Checked`: Displays a check mark (useful for mutually exclusive options like text color selection)
* `Shortcut`: Defines keyboard selection combination

In MDI applications, use `MergeMenu` to combine MDI parent and child form menus. Since a `MenuItem` cannot exist in multiple locations simultaneously (like `MainMenu` and `ContextMenu`), use `CloneMenu` to create copies.

Events enable dynamic control:

* `Popup`: Perform pre-display tasks (show/hide items based on application state)
* `Select`: Execute actions when users hover (e.g., display detailed help)

{% hint style="info" %}
For a full list of properties, methods and events see the [API documentation.](http://docs.wisej.com/api)
{% endhint %}

## Advanced

### JavaScript Widget

| Item             | Description                                                                                                         |
| ---------------- | ------------------------------------------------------------------------------------------------------------------- |
| Class name       | "wisej.web.menu.MenuItem"                                                                                           |
| Theme appearance | "item", see [Themes](https://docs.wisej.com/theme-builder/theme-elements/elements)                                  |
| Child components | "icon" is the item's icon, if applicable                                                                            |
| Source code      | [https://github.com/iceteagroup/wisej-js](https://github.com/iceteagroup/wisej-js/blob/master/wisej.web.TextBox.js) |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.wisej.com/docs/controls/menus/menuitem.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
