aardio 文档

ContextMenuStrip 右键菜单

AntdUI.ContextMenuStrip 是静态右键菜单工具,可为 AntdUI/WinForms 控件打开现代样式菜单。菜单项使用 ContextMenuStripItem,分割线使用 ContextMenuStripItemDivider

最小示例

import win.ui;
import dotNet;
import dotNet.AntdUI;
/*DSG{{*/
var winform = win.form(text="AntdUI ContextMenuStrip";right=520;bottom=260)
winform.add(host={cls="custom";left=20;top=20;right=500;bottom=200;z=1})
/*}}*/

var button = AntdUI.Button(winform.host);
button.Text = "右键或单击显示菜单";

var itemType = AntdUI.ContextMenuStripItem("刷新").GetType();
var baseType = itemType.BaseType; // AntdUI.IContextMenuStripItem 抽象基类
var items = dotNet.createArray(baseType,3);
items.SetValue(AntdUI.ContextMenuStripItem("刷新","Ctrl+R"),0);
items.SetValue(AntdUI.ContextMenuStripItemDivider(),1);
items.SetValue(AntdUI.ContextMenuStripItem("退出"),2);

button.Click = function(sender,e){
    AntdUI.ContextMenuStrip.open(button,function(item){
        winform.msgbox("点击菜单:" + item.Text);
    },items);
}

winform.show();
win.loopMessage();

使用 Config 精细配置

var cfg = AntdUI.ContextMenuStrip.Config(button,function(item){
    // item.Text / item.ID / item.Tag
},items,0);
cfg.SetRadius(8).SetAlign(AntdUI.TAlign.BR).SetTopMost(true);
AntdUI.ContextMenuStrip.open(cfg);

常用类型

ContextMenuStrip.Config

ContextMenuStripItem

注意事项

Markdown 格式