Previous topicNext topic
Help > 开发指南 > 窗体开发 > 控件参考 > 控件参考 > 菜单 > GridMenuBase(Sm空菜单) > 事件 >
BeforeMenuCommandClick

BeforeMenuCommandClick点击菜单之前触发。我们可以做到针对一些系统自带命令进行修改。比如在执行命令之前先做一些操作,比如弹出一个窗口,让用户输入一些参数等等。我们平台中的窗体管理就是这种场景的应用。

e参数介绍:

BaseGrid:BaseGrid类型,返回当前菜单绑定的表对象。

CallerLink:C1CommandLink类型,返回当前菜单中C1CommandLink对象的引用。

Cancel:是否取消后面菜单命令的执行。通过此属性我们可以控制一些系统默认命令的执行与否。比如我们可以针对BaseGridMenu菜单中系统自带的“打印”命令进行修改默认行为。在执行打印之前先判断一下某个条件是否符合,如果不符合条件就是弹出一个提示框给用户,然后将此Cancel属性设置为True,中断系统命令的继续执行。

ClickSource:ClickSourceEnum枚举类型,此枚举的成员用于确定ClickEventArgs类中ClickSource属性的值。

public enum ClickSourceEnum
{
    //单击来源无法确定.
    None = 0,
    //通过菜单按钮单击触发.
    Menu = 1,
    //通过菜单的快捷键触发
    Shortcut = 2,
    //通过外部触发,比如PerformClick之类的。
    External = 3
}

Command:C1Command类型,返回当前菜单执行的C1Command对象引用。