使用下拉操作将自定义按钮添加到屏幕顶部

时间:2018-02-16 17:54:31

标签: acumatica

我想在“结算和调整”屏幕的标题中添加一个自定义按钮,其中包含下拉列表中的自定义操作,以及“操作”和“操作”按钮。已经存在的按钮(我不想将这些操作添加到现有的'操作按钮 - 我希望我自己的下拉列表包含自定义操作)。

我知道如何在现有的“操作”中添加操作。按钮,但有没有办法做我想做的事情?

1 个答案:

答案 0 :(得分:0)

只需使用您自己的下拉按钮即可。您需要添加"操作"按钮,然后执行与其他按钮相同的步骤,将它们添加到主下拉按钮。

以下是一个简单示例。我创建了一个MyDropMenu操作按钮,其中所有其他按钮都位于:

//within initialize or graph constructor...
MyDropMenu.AddMenuAction(MyAction1);
MyDropMenu.AddMenuAction(MyAction2);
MyDropMenu.AddMenuAction(MyAction3);
//...


public PXAction<PrimaryDac> MyDropMenu;
[PXUIField(DisplayName = "My Drop Menu", MapEnableRights = PXCacheRights.Select)]
[PXButton(MenuAutoOpen = true)]
protected IEnumerable myDropMenu(PXAdapter adapter)
{
    return adapter.Get();
}

public PXAction<PrimaryDac> MyAction1;
[PXUIField(DisplayName = "My Action 1", MapEnableRights = PXCacheRights.Select)]
[PXButton]
protected IEnumerable myAction1(PXAdapter adapter)
{
    return adapter.Get();
}

public PXAction<PrimaryDac> MyAction2;
[PXUIField(DisplayName = "My Action 2", MapEnableRights = PXCacheRights.Select)]
[PXButton]
protected IEnumerable myAction2(PXAdapter adapter)
{
    return adapter.Get();
}

public PXAction<PrimaryDac> MyAction3;
[PXUIField(DisplayName = "My Action 3", MapEnableRights = PXCacheRights.Select)]
[PXButton]
protected IEnumerable myAction3(PXAdapter adapter)
{
    return adapter.Get();
}

您还需要将下拉菜单操作的回调命令添加到页面中,如下所示......

<px:PXDSCallbackCommand Name="MyDropMenu" Visible="True" CommitChanges="true" StartNewGroup="true" ></px:PXDSCallbackCommand>

我在销售订单扩展上测试了这个,将PrimaryDac替换为SOOrder并显示为:

enter image description here