如何在 Acumatica PXGrid 中保持复选框选中状态?

How to persist checkbox checked state in Acumatica PXGrid?

我在 PXGrid 中有 "selected" 复选框列,当我选中它然后页面回发并且选中状态不会丢失,但是当我单击自定义操作按钮然后选中复选框时,未选中,我应该怎么做保持复选框状态?

点击Action按钮,我打开了一个Dialogbox,这里所有的checkbox都没有被选中,PrimaryView和dialogbox data-member是不同的。

我应该怎么做才能保持复选框状态?

Selected 标识符在处理屏幕中具有特殊含义。 Acumatica 框架将不同的行为应用于名为 Selected 的字段。对于处理屏幕,需要有一个名为 Selected 的字段。在这种情况之外,您应该避免命名字段 Selected.

确保字段装饰有 PXDBBool 属性而不是 PXBool 属性。只有带有 PXDB 前缀的字段才会保存到数据库。

将数据库和 DAC 中的字段名称从 Selected 更改为其他名称,例如 IsChecked

public abstract class isChecked : PX.Data.BQL.BqlBool.Field<isChecked> { }

[PXDBBool]
[PXUIField(DisplayName="Selected")]
public virtual Boolean? IsChecked
{
    get;
    set;
}

yourviewname.Cache.Persist(PXDBOperation.Update);