Acumatica-FieldUpdated-选中/取消选中复选框时启用/禁用另一个控件

时间:2019-06-24 10:20:53

标签: c# acumatica

我有两个自定义字段,一个是复选框,另一个是文本框,我想在更改复选框值时更改启用/禁用屏幕上的文本字段,我在FieldUpdated上添加了一个事件处理程序布尔复选框控件的事件,并获得以下代码:

protected void CROpportunity_MyCheckbox_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
  var row = (CROpportunity)e.Row;
}

我可以以及如何从此上下文访问其他控件吗?

我想我需要在复选框上启用CommitChanges。

谢谢

1 个答案:

答案 0 :(得分:1)

您应该使用RowSelected事件处理程序来启用/禁用控件。 这是如何执行此操作的示例:

protected virtual void CROpportunity_RowSelected(PXCache sender, PXRowSelectedEventArgs e,PXRowSelected baseMethod)
{
    baseMethod?.Invoke(sender, e);
    if(e.Row is CROpportunity row)
    {
        CROpportunityExt rowExt = PXCache<CROpportunity>.GetExtension<CROpportunityExt>(row);
        PXUIFieldAttribute.SetEnabled<CROpportunityExt.myTextField>(cache,row,rowExt.MyCheckbox==true)
    }
}