跳转到内容

SusMenu

SusMenu

锚定在激活器上的弹出菜单 — 条目、分隔线、快捷键。

SusKit · 原子(商业)

在 Playground 中打开

SusKit · Atoms

属性

名称类型默认值
ModelProp<bool>falsev-model
CloseOnClickProp<bool>truev-model
CloseOnContentClickProp<bool>falsev-model
OpenOnHoverProp<bool>falsev-model
MinWidthProp<float>160fv-model
MaxWidthProp<float>320fv-model
MaxHeightProp<float>0fv-model
OffsetXProp<float>0fv-model
OffsetYProp<float>0fv-model
LocationProp<string>"bottom"v-model
DensityProp<string>"default"v-model
RoundedProp<string>"default"v-model
ElevationProp<string>"default"v-model
TransitionProp<bool>truev-model
TransitionDurationProp<float>150fv-model

插槽

没有插槽。

事件

名称字段载荷
ClickOnClick
OpenOnOpen
CloseOnClose
ItemClickOnItemClickstring

样式钩子

USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:

  • sus-menu
  • sus-menu__content
  • sus-menu__divider
  • sus-menu__item
  • sus-menu__item--disabled
  • sus-menu__item--header
  • sus-menu__item--highlighted
  • sus-menu__item-check
  • sus-menu__item-check--on
  • sus-menu__item-check-icon
  • sus-menu__item-chevron
  • sus-menu__item-header-text
  • sus-menu__item-icon
  • sus-menu__item-label-area
  • sus-menu__item-shortcut
  • sus-menu__item-title
  • sus-menu__submenu
  • sus-menu--density-comfortable
  • sus-menu--density-compact
  • sus-menu--elevation-flat
  • sus-menu--elevation-overlay
  • sus-menu--open-on-hover
  • sus-menu--rounded-pill
  • sus-menu--rounded-sharp

用法

条目在代码中设置(List<SusMenuItemData>)。使用 SetActivator 绑定激活器。

csharp
var menu = new SusMenu();
menu.Location.Value = "bottom";
menu.Items.Value = new List<SusMenu.SusMenuItemData>
{
    new() { Title = "Edit", Value = "edit", Icon = "pencil", Shortcut = "Ctrl+E" },
    new() { Title = "Duplicate", Value = "dup", Icon = "copy" },
    new() { Type = SusMenu.SusMenuItemType.Divider },
    new() { Title = "Delete", Value = "delete", Icon = "trash" },
};
menu.Model.Value = true; // open for preview
menu.OnItemClick += value => { /* … */ };
menu.SetActivator(activatorButton);
属性作用
ItemsList<SusMenuItemData> — 行 / 分隔线 / 表头
Model打开(true)/ 关闭
Location相对于激活器的弹出方向
CloseOnClick选择条目时关闭
OpenOnHover指针进入时打开

备注

  • 条目 TypeDefault · Divider · Header · Checkbox · Radio
  • 手动模式:跳过 Items,在 SetActivator 之后自行构建内容。