MenuKit 8.6.4
dotnet add package MenuKit --version 8.6.4
NuGet\Install-Package MenuKit -Version 8.6.4
<PackageReference Include="MenuKit" Version="8.6.4" />
<PackageVersion Include="MenuKit" Version="8.6.4" />
<PackageReference Include="MenuKit" />
paket add MenuKit --version 8.6.4
#r "nuget: MenuKit, 8.6.4"
#:package MenuKit@8.6.4
#addin nuget:?package=MenuKit&version=8.6.4
#tool nuget:?package=MenuKit&version=8.6.4
MenuKit
Fluent-построитель главного меню для WinForms-приложений. Позволяет создавать меню цепочкой вызовов с поддержкой подменю, иконок и горячих клавиш.
Установка
dotnet add package MenuKit
Справочник API
Класс MenuBuilder
MenuBuilder.Create
public static MenuBuilder Create(Form form)
Создает новый построитель меню для указанной формы.
Параметры:
form— форма, к которой будет прикреплено меню.
Возвращает: экземпляр MenuBuilder для цепочки вызовов.
.Menu
public MenuBuilder Menu(string name)
Добавляет пункт меню верхнего уровня (например, «Файл», «Редактирование», «Справочники»).
Параметры:
name— текст пункта меню.
Возвращает: текущий MenuBuilder.
.Item (базовая перегрузка)
public MenuBuilder Item(string name, Action action)
Добавляет элемент в текущее меню с обработчиком нажатия.
Параметры:
name— текст элемента меню.action— делегатAction, вызываемый при выборе пункта.
Возвращает: текущий MenuBuilder.
.Item (перегрузка с горячими клавишами)
public MenuBuilder Item(string name, Action action, Keys shortcut)
Добавляет элемент в текущее меню с обработчиком нажатия и клавиатурным сокращением.
Параметры:
name— текст элемента меню.action— делегатAction, вызываемый при выборе пункта.shortcut— комбинация клавиш (Keys), напримерKeys.Control | Keys.S.
Возвращает: текущий MenuBuilder.
.SubMenu
public MenuBuilder SubMenu(string name)
Начинает подменю с указанным именем. Все последующие вызовы Item добавляются в это подменю. Для возврата на уровень выше используйте EndSubMenu(). Подменю могут быть вложенными.
Параметры:
name— текст подменю.
Возвращает: текущий MenuBuilder.
.EndSubMenu
public MenuBuilder EndSubMenu()
Завершает текущее подменю и возвращается к родительскому меню.
Возвращает: текущий MenuBuilder.
.Icon
public MenuBuilder Icon(Image image)
Устанавливает иконку для последнего добавленного элемента меню (пункт, подменю или элемент верхнего уровня).
Параметры:
image— изображение иконки (Image).
Возвращает: текущий MenuBuilder.
.Separator
public MenuBuilder Separator()
Добавляет горизонтальный разделитель в текущее меню.
Возвращает: текущий MenuBuilder.
.Build
public MenuStrip Build()
Завершает построение меню, прикрепляет MenuStrip к форме и назначает его главным меню формы.
Возвращает: созданный MenuStrip.
Примеры использования
Пример 1: Туристическое агентство
using MenuKit;
MenuBuilder.Create(this)
.Menu("Файл")
.Item("Новый тур", () => CreateTour(), Keys.Control | Keys.N)
.Item("Открыть каталог", () => OpenCatalog(), Keys.Control | Keys.O)
.Separator()
.Item("Выход", () => Close(), Keys.Alt | Keys.F4)
.Menu("Клиенты")
.Item("Список клиентов", () => ShowClients())
.Item("Добавить клиента", () => AddClient())
.SubMenu("Отчеты")
.Item("По направлениям", () => ReportByDestination())
.Item("По менеджерам", () => ReportByManager())
.EndSubMenu()
.Menu("Справка")
.Item("О программе", () => ShowAbout())
.Build();
Пример 2: Складская система с иконками
using MenuKit;
MenuBuilder.Create(this)
.Menu("Склад")
.Item("Приемка товара", () => AcceptGoods())
.Icon(Properties.Resources.IconAccept)
.Item("Отгрузка", () => ShipGoods())
.Icon(Properties.Resources.IconShip)
.Separator()
.SubMenu("Инвентаризация")
.Item("Начать инвентаризацию", () => StartInventory())
.Item("Отчет о расхождениях", () => ShowDiscrepancies())
.EndSubMenu()
.Menu("Справочники")
.Item("Товары", () => ShowProducts())
.Item("Поставщики", () => ShowSuppliers())
.Item("Категории", () => ShowCategories())
.Build();
Пример 3: Библиотечная система с вложенными подменю
using MenuKit;
MenuBuilder.Create(this)
.Menu("Каталог")
.Item("Поиск книги", () => SearchBooks(), Keys.Control | Keys.F)
.Item("Добавить книгу", () => AddBook(), Keys.Control | Keys.N)
.SubMenu("Экспорт")
.Item("В Excel", () => ExportToExcel())
.Item("В PDF", () => ExportToPdf())
.EndSubMenu()
.Menu("Читатели")
.Item("Регистрация", () => RegisterReader())
.Item("Выдача книги", () => IssueBook())
.Item("Возврат книги", () => ReturnBook())
.Separator()
.Item("Должники", () => ShowDebtors())
.Build();
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0-windows7.0 is compatible. net9.0-windows was computed. net10.0-windows was computed. |
-
net8.0-windows7.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on MenuKit:
| Package | Downloads |
|---|---|
|
ISBuilder
Information System Builder — full toolkit for building .NET 8 WinForms applications with EF Core, SQL Server. Export, CRUD, forms, charts, auth, reports, validation, themes. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.6.4 | 131 | 4/12/2026 |